home *** CD-ROM | disk | FTP | other *** search
/ Acorn User: China / Acorn User China CD-ROM (UK) (Disc A) / Acorn User China CD-ROM (UK) (Disc A).bin / DEMON / HAMRADIO / RISCYTNC.ARC / !RiscyTNC_ASSEM < prev    next >
Unknown  |  1994-01-30  |  27.2 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text


This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file data default
100% xdgMime image/x-tga default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0d 00 0a 0b f4 3e 41 53 | 53 45 4d 0d 00 14 04 0d |.....>AS|SEM.....|
|00000010| 00 1e 1d f4 20 20 41 73 | 73 65 6d 62 6c 65 72 20 |.... As|sembler |
|00000020| 66 6f 72 20 52 69 73 63 | 79 54 4e 43 0d 00 28 13 |for Risc|yTNC..(.|
|00000030| f4 20 20 56 65 72 73 69 | 6f 6e 20 30 2e 31 37 0d |. Versi|on 0.17.|
|00000040| 00 32 1f f4 20 20 28 43 | 29 20 47 61 72 65 74 68 |.2.. (C|) Gareth|
|00000050| 20 52 6f 77 6c 61 6e 64 | 73 20 31 39 39 30 0d 00 | Rowland|s 1990..|
|00000060| 3c 24 f4 20 20 4c 61 73 | 74 20 55 70 64 61 74 65 |<$. Las|t Update|
|00000070| 20 61 73 20 70 65 72 20 | 66 69 6c 65 20 73 74 61 | as per |file sta|
|00000080| 6d 70 0d 00 46 04 0d 00 | 50 2e f4 20 20 46 72 65 |mp..F...|P.. Fre|
|00000090| 65 20 75 73 65 20 6d 61 | 79 20 62 65 20 6d 61 64 |e use ma|y be mad|
|000000a0| 65 20 6f 66 20 74 68 65 | 73 65 20 72 6f 75 74 69 |e of the|se routi|
|000000b0| 6e 65 73 2c 0d 00 5a 23 | f4 20 20 70 72 6f 76 69 |nes,..Z#|. provi|
|000000c0| 64 69 6e 67 20 6e 6f 20 | 70 72 6f 66 69 74 20 69 |ding no |profit i|
|000000d0| 73 20 6d 61 64 65 2e 0d | 00 64 04 0d 00 6e 49 f4 |s made..|.d...nI.|
|000000e0| 20 20 45 6e 74 65 72 20 | 74 68 65 73 65 20 72 6f | Enter |these ro|
|000000f0| 75 74 69 6e 65 73 20 66 | 72 6f 6d 20 42 61 73 69 |utines f|rom Basi|
|00000100| 63 2c 20 75 73 69 6e 67 | 20 41 25 20 74 6f 20 64 |c, using| A% to d|
|00000110| 65 73 63 72 69 62 65 20 | 73 65 72 76 69 63 65 20 |escribe |service |
|00000120| 74 79 70 65 0d 00 78 39 | f4 20 20 74 68 65 6e 20 |type..x9|. then |
|00000130| 43 41 4c 4c 20 74 68 65 | 20 61 64 64 72 65 73 73 |CALL the| address|
|00000140| 20 74 68 65 20 72 6f 75 | 74 69 6e 65 20 69 73 20 | the rou|tine is |
|00000150| 61 73 73 65 6d 62 6c 65 | 64 20 61 74 2e 0d 00 82 |assemble|d at....|
|00000160| 04 0d 00 8c 1a ee 20 85 | 20 f1 20 f6 24 2b 22 20 |...... .| . .$+" |
|00000170| 61 74 20 22 2b c3 28 9e | 29 3a e0 0d 00 96 2d 6c |at "+.(.|):....-l|
|00000180| 65 6e 67 74 68 25 3d 26 | 38 30 30 3a 61 64 64 72 |ength%=&|800:addr|
|00000190| 65 73 73 24 3d 22 26 36 | 30 30 30 30 22 3a 61 64 |ess$="&6|0000":ad|
|000001a0| 64 72 65 73 73 25 3d 30 | 0d 00 a0 15 de 20 70 6c |dress%=0|..... pl|
|000001b0| 61 63 65 20 28 6c 65 6e | 67 74 68 25 29 0d 00 aa |ace (len|gth%)...|
|000001c0| 29 f2 61 64 64 72 65 73 | 73 63 6f 6e 76 28 61 64 |).addres|sconv(ad|
|000001d0| 64 72 65 73 73 24 2c 70 | 6c 61 63 65 2c 61 64 64 |dress$,p|lace,add|
|000001e0| 72 65 73 73 25 29 0d 00 | b4 12 e3 20 5a 25 3d 30 |ress%)..|... Z%=0|
|000001f0| 20 b8 20 33 20 88 20 33 | 0d 00 be 1c 20 50 25 3d | . 3 . 3|.... P%=|
|00000200| 61 64 64 72 65 73 73 25 | 3a 4f 25 3d a8 28 70 6c |address%|:O%=.(pl|
|00000210| 61 63 65 29 0d 00 c8 1b | 20 f2 6d 61 69 6e 63 6f |ace)....| .mainco|
|00000220| 64 65 28 5a 25 2c 50 25 | 2c 4f 25 2c 4c 25 29 0d |de(Z%,P%|,O%,L%).|
|00000230| 00 d2 08 ed 20 5a 25 0d | 00 dc 1f 6c 65 6e 67 74 |.... Z%.|...lengt|
|00000240| 68 24 3d c3 7e 28 28 4c | 25 2d 61 64 64 72 65 73 |h$=.~((L|%-addres|
|00000250| 73 25 29 2b 34 29 0d 00 | e6 39 ff 20 22 53 41 56 |s%)+4)..|.9. "SAV|
|00000260| 45 20 3c 52 69 73 63 79 | 54 4e 43 24 44 69 72 3e |E <Riscy|TNC$Dir>|
|00000270| 2e 43 6f 64 65 20 36 30 | 30 30 30 20 2b 22 2b 6c |.Code 60|000 +"+l|
|00000280| 65 6e 67 74 68 24 2b 22 | 20 36 30 30 37 43 22 0d |ength$+"| 6007C".|
|00000290| 00 f0 24 2a 53 45 54 54 | 59 50 45 20 3c 52 69 73 |..$*SETT|YPE <Ris|
|000002a0| 63 79 54 4e 43 24 44 69 | 72 3e 2e 43 6f 64 65 20 |cyTNC$Di|r>.Code |
|000002b0| 46 46 43 0d 00 fa 05 e0 | 0d 01 04 04 0d 01 0e 2c |FFC.....|.......,|
|000002c0| dd f2 61 64 64 72 65 73 | 73 63 6f 6e 76 28 61 64 |..addres|sconv(ad|
|000002d0| 64 72 65 73 73 24 2c 70 | 6c 61 63 65 2c f8 20 61 |dress$,p|lace,. a|
|000002e0| 64 64 72 65 73 73 25 29 | 0d 01 18 23 e7 20 61 64 |ddress%)|...#. ad|
|000002f0| 64 72 65 73 73 24 3d 22 | 22 8c 20 61 64 64 72 65 |dress$="|". addre|
|00000300| 73 73 25 3d 70 6c 61 63 | 65 3a e1 0d 01 22 18 61 |ss%=plac|e:...".a|
|00000310| 64 64 72 65 73 73 25 3d | a0 28 61 64 64 72 65 73 |ddress%=|.(addres|
|00000320| 73 24 29 0d 01 2c 05 e1 | 0d 01 36 04 0d 01 40 1d |s$)..,..|..6...@.|
|00000330| dd f2 6d 61 69 6e 63 6f | 64 65 28 5a 25 2c 50 25 |..mainco|de(Z%,P%|
|00000340| 2c 4f 25 2c f8 20 4c 25 | 29 0d 01 4a 0b 5b 4f 50 |,O%,. L%|)..J.[OP|
|00000350| 54 20 5a 25 0d 01 54 05 | 3b 0d 01 5e 2e 3b 20 45 |T Z%..T.|;..^.; E|
|00000360| 6e 74 65 72 20 20 43 6f | 64 65 20 68 65 72 65 20 |nter Co|de here |
|00000370| 77 69 74 68 20 73 65 72 | 76 69 63 65 20 74 79 70 |with ser|vice typ|
|00000380| 65 20 69 6e 20 52 30 0d | 01 68 05 3b 0d 01 72 0a |e in R0.|.h.;..r.|
|00000390| 2e 65 6e 74 72 79 0d 01 | 7c 3e 42 20 72 65 67 74 |.entry..||>B regt|
|000003a0| 77 65 6c 76 65 69 6e 69 | 74 3b 20 20 20 20 20 20 |welveini|t; |
|000003b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 49 6e 69 | | Ini|
|000003c0| 74 69 61 6c 69 73 65 20 | 52 31 32 20 61 73 20 73 |tialise |R12 as s|
|000003d0| 74 61 63 6b 0d 01 86 4c | 45 51 55 53 22 20 43 6f |tack...L|EQUS" Co|
|000003e0| 64 65 20 46 6f 72 20 52 | 69 73 63 79 54 4e 43 20 |de For R|iscyTNC |
|000003f0| 56 20 30 2e 31 37 20 22 | 3b 20 20 50 75 74 20 61 |V 0.17 "|; Put a|
|00000400| 20 64 65 73 63 72 69 70 | 74 6f 72 20 61 74 20 74 | descrip|tor at t|
|00000410| 68 65 20 73 74 61 72 74 | 20 6f 66 20 63 6f 64 65 |he start| of code|
|00000420| 0d 01 90 09 41 4c 49 47 | 4e 0d 01 9a 05 3b 0d 01 |....ALIG|N....;..|
|00000430| a4 15 3b 20 4d 61 69 6e | 20 65 78 69 74 20 50 6f |..; Main| exit Po|
|00000440| 69 6e 74 0d 01 ae 15 3b | 3d 3d 3d 3d 3d 3d 3d 3d |int....;|========|
|00000450| 3d 3d 3d 3d 3d 3d 3d 3d | 0d 01 b8 4b 2e 6d 61 73 |========|...K.mas|
|00000460| 74 65 72 65 78 69 74 3b | 20 20 20 20 20 20 20 20 |terexit;| |
|00000470| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 54 | | T|
|00000480| 68 65 20 77 61 79 20 6f | 75 74 2c 20 72 65 73 74 |he way o|ut, rest|
|00000490| 6f 72 69 6e 67 20 6f 75 | 72 20 72 65 67 69 73 74 |oring ou|r regist|
|000004a0| 65 72 73 0d 01 c2 23 4c | 44 4d 46 41 20 52 31 32 |ers...#L|DMFA R12|
|000004b0| 21 2c 7b 52 38 2d 52 31 | 34 7d 3a 4d 4f 56 20 52 |!,{R8-R1|4}:MOV R|
|000004c0| 31 35 2c 52 31 34 0d 01 | cc 05 3b 0d 01 d6 44 2e |15,R14..|..;...D.|
|000004d0| 72 65 67 74 77 65 6c 76 | 65 69 6e 69 74 65 64 20 |regtwelv|einited |
|000004e0| 3b 20 52 65 74 75 72 6e | 65 64 20 66 72 6f 6d 20 |; Return|ed from |
|000004f0| 69 6e 69 74 69 61 6c 69 | 73 69 6e 67 20 52 31 32 |initiali|sing R12|
|00000500| 20 61 73 20 6c 6f 63 61 | 6c 20 73 74 61 63 6b 0d | as loca|l stack.|
|00000510| 01 e0 17 53 54 4d 46 41 | 20 52 31 32 21 2c 7b 52 |...STMFA| R12!,{R|
|00000520| 38 2d 52 31 34 7d 0d 01 | ea 05 3b 0d 01 f4 19 3b |8-R14}..|..;....;|
|00000530| 20 44 65 63 6f 64 65 20 | 53 65 72 76 69 63 65 20 | Decode |Service |
|00000540| 43 61 6c 6c 0d 01 fe 19 | 3b 3d 3d 3d 3d 3d 3d 3d |Call....|;=======|
|00000550| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 02 08 |========|=====...|
|00000560| 05 3b 0d 02 12 3d 3b 20 | 43 61 6c 6c 73 20 69 6e |.;...=; |Calls in|
|00000570| 20 74 68 65 20 72 61 6e | 67 65 20 26 30 30 2d 26 | the ran|ge &00-&|
|00000580| 32 30 20 41 72 65 20 66 | 6f 72 20 6d 69 73 63 20 |20 Are f|or misc |
|00000590| 77 69 6d 70 20 6f 70 65 | 72 61 74 69 6f 6e 73 0d |wimp ope|rations.|
|000005a0| 02 1c 3e 3b 20 20 20 20 | 20 20 20 20 20 20 20 20 |..>; | |
|000005b0| 20 20 20 20 20 20 20 20 | 26 34 30 2d 26 39 30 20 | |&40-&90 |
|000005c0| 44 65 61 6c 20 77 69 74 | 68 20 52 69 73 63 79 74 |Deal wit|h Riscyt|
|000005d0| 6e 63 20 6f 70 65 72 61 | 74 69 6f 6e 73 0d 02 26 |nc opera|tions..&|
|000005e0| 05 3b 0d 02 30 47 43 4d | 50 20 52 30 2c 23 26 38 |.;..0GCM|P R0,#&8|
|000005f0| 30 3a 42 47 45 20 74 6e | 63 75 74 69 6c 73 3b 20 |0:BGE tn|cutils; |
|00000600| 20 20 20 20 20 20 20 20 | 20 47 6f 20 73 74 72 61 | | Go stra|
|00000610| 69 67 68 74 20 74 6f 20 | 74 68 65 20 54 4e 43 20 |ight to |the TNC |
|00000620| 75 74 69 6c 69 74 69 65 | 73 0d 02 3a 44 43 4d 50 |utilitie|s..:DCMP|
|00000630| 20 52 30 2c 23 26 34 30 | 3a 42 47 45 20 6d 69 73 | R0,#&40|:BGE mis|
|00000640| 63 75 74 69 6c 73 3b 20 | 20 20 20 20 20 20 20 20 |cutils; | |
|00000650| 47 6f 20 73 74 72 61 69 | 67 68 74 20 74 6f 20 74 |Go strai|ght to t|
|00000660| 68 65 20 6d 69 73 63 20 | 75 74 69 6c 73 0d 02 44 |he misc |utils..D|
|00000670| 38 43 4d 50 20 52 30 2c | 23 26 31 30 3a 42 47 54 |8CMP R0,|#&10:BGT|
|00000680| 20 61 64 64 65 72 72 3b | 20 20 20 20 20 20 20 20 | adderr;| |
|00000690| 20 20 20 20 4e 6f 20 67 | 6f 6f 64 2c 20 62 61 64 | No g|ood, bad|
|000006a0| 20 43 61 6c 6c 0d 02 4e | 05 3b 0d 02 58 05 3b 0d | Call..N|.;..X.;.|
|000006b0| 02 62 25 3b 20 44 65 63 | 6f 64 65 20 63 61 6c 6c |.b%; Dec|ode call|
|000006c0| 73 20 74 6f 20 77 69 6d | 70 20 6f 70 65 72 61 74 |s to wim|p operat|
|000006d0| 69 6f 6e 73 0d 02 6c 12 | 2e 77 69 6d 70 70 72 6f |ions..l.|.wimppro|
|000006e0| 67 75 74 69 6c 73 0d 02 | 76 29 43 4d 50 20 52 30 |gutils..|v)CMP R0|
|000006f0| 2c 23 26 46 3a 42 47 54 | 20 61 64 64 65 72 72 3a |,#&F:BGT| adderr:|
|00000700| 4d 4f 56 20 52 30 2c 52 | 30 2c 4c 53 4c 23 32 0d |MOV R0,R|0,LSL#2.|
|00000710| 02 80 3b 53 54 4d 46 41 | 20 31 32 21 2c 7b 52 31 |..;STMFA| 12!,{R1|
|00000720| 7d 3a 41 44 52 20 52 31 | 2c 77 75 3a 4c 44 52 20 |}:ADR R1|,wu:LDR |
|00000730| 52 30 2c 5b 52 31 2c 52 | 30 5d 3a 4c 44 4d 46 41 |R0,[R1,R|0]:LDMFA|
|00000740| 20 52 31 32 21 2c 7b 52 | 31 7d 0d 02 8a 1f 53 55 | R12!,{R|1}....SU|
|00000750| 42 20 52 30 2c 52 30 2c | 23 34 3a 41 44 44 20 52 |B R0,R0,|#4:ADD R|
|00000760| 31 35 2c 52 31 35 2c 52 | 30 0d 02 94 07 2e 77 75 |15,R15,R|0.....wu|
|00000770| 0d 02 9e 20 45 51 55 44 | 20 61 64 64 65 72 72 2d |... EQUD| adderr-|
|00000780| 77 75 3b 20 26 30 30 20 | 52 65 73 65 72 76 65 64 |wu; &00 |Reserved|
|00000790| 0d 02 a8 28 45 51 55 44 | 20 77 72 69 63 6f 6e 2d |...(EQUD| wricon-|
|000007a0| 77 75 3b 20 26 30 31 20 | 57 72 69 74 65 20 74 6f |wu; &01 |Write to|
|000007b0| 20 61 6e 20 69 63 6f 6e | 0d 02 b2 20 45 51 55 44 | an icon|... EQUD|
|000007c0| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 32 20 | adderr-|wu; &02 |
|000007d0| 52 65 73 65 72 76 65 64 | 0d 02 bc 20 45 51 55 44 |Reserved|... EQUD|
|000007e0| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 33 20 | adderr-|wu; &03 |
|000007f0| 52 65 73 65 72 76 65 64 | 0d 02 c6 20 45 51 55 44 |Reserved|... EQUD|
|00000800| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 34 20 | adderr-|wu; &04 |
|00000810| 52 65 73 65 72 76 65 64 | 0d 02 d0 20 45 51 55 44 |Reserved|... EQUD|
|00000820| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 35 20 | adderr-|wu; &05 |
|00000830| 52 65 73 65 72 76 65 64 | 0d 02 da 20 45 51 55 44 |Reserved|... EQUD|
|00000840| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 36 20 | adderr-|wu; &06 |
|00000850| 52 65 73 65 72 76 65 64 | 0d 02 e4 20 45 51 55 44 |Reserved|... EQUD|
|00000860| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 37 20 | adderr-|wu; &07 |
|00000870| 52 65 73 65 72 76 65 64 | 0d 02 ee 20 45 51 55 44 |Reserved|... EQUD|
|00000880| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 38 20 | adderr-|wu; &08 |
|00000890| 52 65 73 65 72 76 65 64 | 0d 02 f8 20 45 51 55 44 |Reserved|... EQUD|
|000008a0| 20 61 64 64 65 72 72 2d | 77 75 3b 20 26 30 39 20 | adderr-|wu; &09 |
|000008b0| 52 65 73 65 72 76 65 64 | 0d 03 02 04 0d 03 0c 14 |Reserved|........|
|000008c0| 3b 57 49 4d 50 20 4f 70 | 65 72 61 74 69 6f 6e 73 |;WIMP Op|erations|
|000008d0| 0d 03 16 14 3b 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |....;===|========|
|000008e0| 3d 3d 3d 3d 0d 03 20 13 | 3b 20 57 72 69 74 65 20 |====.. .|; Write |
|000008f0| 74 6f 20 49 63 6f 6e 0d | 03 2a 45 3b 20 53 65 72 |to Icon.|.*E; Ser|
|00000900| 76 69 63 65 20 26 30 31 | 2c 20 52 31 3d 77 69 6e |vice &01|, R1=win|
|00000910| 64 6f 77 20 68 61 6e 64 | 6c 65 2c 20 52 32 3d 69 |dow hand|le, R2=i|
|00000920| 63 6f 6e 20 68 61 6e 64 | 6c 65 2c 20 52 33 3d 53 |con hand|le, R3=S|
|00000930| 6f 75 72 63 65 20 73 74 | 72 69 6e 67 0d 03 34 05 |ource st|ring..4.|
|00000940| 3b 0d 03 3e 42 2e 77 72 | 69 63 6f 6e 3b 20 45 6e |;..>B.wr|icon; En|
|00000950| 74 72 79 20 70 6f 69 6e | 74 20 66 6f 72 20 77 72 |try poin|t for wr|
|00000960| 69 74 65 69 63 6f 6e 20 | 77 69 74 68 20 73 6f 75 |iteicon |with sou|
|00000970| 72 63 65 20 61 74 20 62 | 61 73 69 63 20 73 74 72 |rce at b|asic str|
|00000980| 69 6e 67 0d 03 48 2b 4c | 44 52 20 52 33 2c 73 74 |ing..H+L|DR R3,st|
|00000990| 72 69 6e 67 3a 42 4c 20 | 77 72 69 74 65 69 63 6f |ring:BL |writeico|
|000009a0| 6e 3a 42 20 6d 61 73 74 | 65 72 65 78 69 74 0d 03 |n:B mast|erexit..|
|000009b0| 52 05 3b 0d 03 5c 40 2e | 77 72 69 74 65 69 63 6f |R.;..\@.|writeico|
|000009c0| 6e 3b 77 69 6e 64 6f 77 | 20 68 61 6e 64 6c 65 20 |n;window| handle |
|000009d0| 69 6e 20 52 31 2c 69 63 | 6f 6e 68 61 6e 64 6c 65 |in R1,ic|onhandle|
|000009e0| 20 69 6e 20 52 32 2c 73 | 6f 75 72 63 65 20 69 6e | in R2,s|ource in|
|000009f0| 20 52 33 0d 03 66 35 4c | 44 52 20 52 35 2c 62 6c | R3..f5L|DR R5,bl|
|00000a00| 6f 63 6b 3a 53 54 52 20 | 52 31 2c 5b 52 35 5d 3a |ock:STR |R1,[R5]:|
|00000a10| 53 54 52 20 52 32 2c 5b | 52 35 2c 23 34 5d 3a 4d |STR R2,[|R5,#4]:M|
|00000a20| 4f 56 20 52 31 2c 52 35 | 0d 03 70 1b 53 57 49 20 |OV R1,R5|..p.SWI |
|00000a30| 22 57 69 6d 70 5f 47 65 | 74 49 63 6f 6e 53 74 61 |"Wimp_Ge|tIconSta|
|00000a40| 74 65 22 0d 03 7a 3c 4c | 44 52 20 52 35 2c 62 6c |te"..z<L|DR R5,bl|
|00000a50| 6f 63 6b 3a 42 49 43 20 | 52 36 2c 52 36 2c 52 36 |ock:BIC |R6,R6,R6|
|00000a60| 3a 53 54 52 20 52 36 2c | 5b 52 35 2c 23 38 5d 3a |:STR R6,|[R5,#8]:|
|00000a70| 53 54 52 20 52 36 2c 5b | 52 35 2c 23 31 32 5d 0d |STR R6,[|R5,#12].|
|00000a80| 03 84 28 4d 4f 56 20 52 | 31 2c 52 33 3a 4c 44 52 |..(MOV R|1,R3:LDR|
|00000a90| 20 52 32 2c 5b 52 35 2c | 23 32 38 5d 3a 4d 4f 56 | R2,[R5,|#28]:MOV|
|00000aa0| 20 52 33 2c 23 37 39 0d | 03 8e 35 53 54 4d 46 41 | R3,#79.|..5STMFA|
|00000ab0| 20 52 31 32 21 2c 7b 52 | 31 34 7d 3a 42 4c 20 73 | R12!,{R|14}:BL s|
|00000ac0| 68 69 66 74 6f 64 63 68 | 61 72 73 3a 4c 44 4d 46 |hiftodch|ars:LDMF|
|00000ad0| 41 20 52 31 32 21 2c 7b | 52 31 34 7d 0d 03 98 34 |A R12!,{|R14}...4|
|00000ae0| 4c 44 52 20 52 31 2c 62 | 6c 6f 63 6b 3a 53 57 49 |LDR R1,b|lock:SWI|
|00000af0| 20 22 57 69 6d 70 5f 53 | 65 74 49 63 6f 6e 53 74 | "Wimp_S|etIconSt|
|00000b00| 61 74 65 22 3a 4d 4f 56 | 20 52 31 35 2c 52 31 34 |ate":MOV| R15,R14|
|00000b10| 0d 03 a2 05 3b 0d 03 ac | 1c 3b 20 44 65 63 6f 64 |....;...|.; Decod|
|00000b20| 65 20 6d 69 73 63 20 4f | 70 65 72 61 74 69 6f 6e |e misc O|peration|
|00000b30| 73 0d 03 b6 05 3b 0d 03 | c0 0e 2e 6d 69 73 63 75 |s....;..|...miscu|
|00000b40| 74 69 6c 73 0d 03 ca 39 | 43 4d 50 20 52 30 2c 23 |tils...9|CMP R0,#|
|00000b50| 26 35 36 3a 42 47 54 20 | 61 64 64 65 72 72 3a 53 |&56:BGT |adderr:S|
|00000b60| 55 42 20 52 30 2c 52 30 | 2c 23 26 34 30 3a 4d 4f |UB R0,R0|,#&40:MO|
|00000b70| 56 20 52 30 2c 52 30 2c | 4c 53 4c 23 32 0d 03 d4 |V R0,R0,|LSL#2...|
|00000b80| 3b 53 54 4d 46 41 20 31 | 32 21 2c 7b 52 31 7d 3a |;STMFA 1|2!,{R1}:|
|00000b90| 41 44 52 20 52 31 2c 74 | 61 3a 4c 44 52 20 52 30 |ADR R1,t|a:LDR R0|
|00000ba0| 2c 5b 52 31 2c 52 30 5d | 3a 4c 44 4d 46 41 20 52 |,[R1,R0]|:LDMFA R|
|00000bb0| 31 32 21 2c 7b 52 31 7d | 0d 03 de 1f 53 55 42 20 |12!,{R1}|....SUB |
|00000bc0| 52 30 2c 52 30 2c 23 34 | 3a 41 44 44 20 52 31 35 |R0,R0,#4|:ADD R15|
|00000bd0| 2c 52 31 35 2c 52 30 0d | 03 e8 07 2e 74 61 0d 03 |,R15,R0.|....ta..|
|00000be0| f2 37 45 51 55 44 20 72 | 65 74 76 65 72 2d 74 61 |.7EQUD r|etver-ta|
|00000bf0| 3b 20 26 34 30 20 52 65 | 70 6c 79 20 77 69 74 68 |; &40 Re|ply with|
|00000c00| 20 76 65 72 73 69 6f 6e | 20 6e 75 6d 62 65 72 20 | version| number |
|00000c10| 2a 20 31 30 30 0d 03 fc | 34 45 51 55 44 20 69 6e |* 100...|4EQUD in|
|00000c20| 69 74 73 74 2d 74 61 3b | 20 26 34 31 20 4e 6f 74 |itst-ta;| &41 Not|
|00000c30| 65 20 77 68 65 72 65 20 | 62 75 66 66 65 72 20 62 |e where |buffer b|
|00000c40| 6c 6f 63 6b 73 20 61 72 | 65 0d 04 06 3d 45 51 55 |locks ar|e...=EQU|
|00000c50| 44 20 70 6f 73 74 63 6f | 2d 74 61 3b 20 26 34 32 |D postco|-ta; &42|
|00000c60| 20 49 6e 66 6f 72 6d 20 | 63 6f 64 65 20 6f 66 20 | Inform |code of |
|00000c70| 63 6f 6e 66 69 67 20 74 | 79 70 65 20 70 61 72 61 |config t|ype para|
|00000c80| 6d 65 74 65 72 73 0d 04 | 10 25 45 51 55 44 20 73 |meters..|.%EQUD s|
|00000c90| 68 75 63 6f 6e 2d 74 61 | 3b 20 26 34 33 20 53 68 |hucon-ta|; &43 Sh|
|00000ca0| 75 66 66 6c 65 20 49 63 | 6f 6e 73 0d 04 1a 34 45 |uffle Ic|ons...4E|
|00000cb0| 51 55 44 20 61 64 64 65 | 72 72 2d 74 61 3b 20 26 |QUD adde|rr-ta; &|
|00000cc0| 34 34 20 53 65 72 69 61 | 6c 20 69 6e 70 75 74 3b |44 Seria|l input;|
|00000cd0| 20 4e 6f 20 6c 6f 6e 67 | 65 72 20 75 73 65 64 0d | No long|er used.|
|00000ce0| 04 24 3b 45 51 55 44 20 | 62 61 75 64 73 74 2d 74 |.$;EQUD |baudst-t|
|00000cf0| 61 3b 20 26 34 35 20 53 | 65 74 20 62 61 75 64 20 |a; &45 S|et baud |
|00000d00| 72 61 74 65 20 66 72 6f | 6d 20 72 65 61 6c 20 76 |rate fro|m real v|
|00000d10| 61 6c 75 65 20 69 6e 20 | 52 31 0d 04 2e 39 45 51 |alue in |R1...9EQ|
|00000d20| 55 44 20 62 61 75 64 64 | 65 2d 74 61 3b 20 26 34 |UD baudd|e-ta; &4|
|00000d30| 36 20 4d 61 6b 65 20 61 | 20 73 74 72 69 6e 67 20 |6 Make a| string |
|00000d40| 66 72 6f 6d 20 62 61 75 | 64 20 6e 6f 20 28 30 2d |from bau|d no (0-|
|00000d50| 31 35 29 0d 04 38 31 45 | 51 55 44 20 75 73 65 69 |15)..81E|QUD usei|
|00000d60| 6e 66 2d 74 61 3b 20 26 | 34 37 20 49 6e 66 6f 72 |nf-ta; &|47 Infor|
|00000d70| 6d 20 63 6f 64 65 20 6f | 66 20 69 6e 70 75 74 20 |m code o|f input |
|00000d80| 75 73 65 72 0d 04 42 32 | 45 51 55 44 20 73 68 75 |user..B2|EQUD shu|
|00000d90| 66 66 31 2d 74 61 3b 20 | 26 34 38 20 53 68 75 66 |ff1-ta; |&48 Shuf|
|00000da0| 66 6c 65 20 74 65 78 74 | 20 69 6e 20 74 65 78 74 |fle text| in text|
|00000db0| 20 73 74 6f 72 65 0d 04 | 4c 31 45 51 55 44 20 73 | store..|L1EQUD s|
|00000dc0| 74 72 64 72 31 2d 74 61 | 3b 20 26 34 39 20 52 65 |trdr1-ta|; &49 Re|
|00000dd0| 64 72 61 77 20 73 74 72 | 65 61 6d 20 77 69 6e 64 |draw str|eam wind|
|00000de0| 6f 77 20 74 65 78 74 0d | 04 56 2e 45 51 55 44 20 |ow text.|.V.EQUD |
|00000df0| 73 74 72 64 72 32 2d 74 | 61 3b 20 26 34 41 20 52 |strdr2-t|a; &4A R|
|00000e00| 65 73 65 72 76 65 64 20 | 66 6f 72 20 64 65 62 75 |eserved |for debu|
|00000e10| 67 67 69 6e 67 0d 04 60 | 3a 45 51 55 44 20 63 6c |gging..`|:EQUD cl|
|00000e20| 65 61 72 61 2d 74 61 3b | 20 26 34 42 20 43 6c 65 |eara-ta;| &4B Cle|
|00000e30| 61 72 20 61 6e 20 61 72 | 65 61 20 6f 66 20 6d 65 |ar an ar|ea of me|
|00000e40| 6d 6f 72 79 20 77 69 74 | 68 20 7a 65 72 6f 73 0d |mory wit|h zeros.|
|00000e50| 04 6a 33 45 51 55 44 20 | 73 65 6e 64 62 74 2d 74 |.j3EQUD |sendbt-t|
|00000e60| 61 3b 20 26 34 43 20 53 | 65 6e 64 20 62 79 74 65 |a; &4C S|end byte|
|00000e70| 73 20 66 72 6f 6d 20 66 | 69 6c 65 20 74 6f 20 54 |s from f|ile to T|
|00000e80| 4e 43 0d 04 74 39 45 51 | 55 44 20 73 65 6e 64 73 |NC..t9EQ|UD sends|
|00000e90| 74 2d 74 61 3b 20 26 34 | 44 20 53 65 6e 64 20 6e |t-ta; &4|D Send n|
|00000ea0| 65 61 74 20 43 52 20 74 | 65 72 6d 65 64 20 73 74 |eat CR t|ermed st|
|00000eb0| 72 69 6e 67 20 74 6f 20 | 54 4e 43 0d 04 7e 3d 45 |ring to |TNC..~=E|
|00000ec0| 51 55 44 20 73 65 6e 64 | 73 6d 2d 74 61 3b 20 26 |QUD send|sm-ta; &|
|00000ed0| 34 45 20 53 65 6e 64 20 | 6d 6f 64 69 66 69 65 64 |4E Send |modified|
|00000ee0| 20 43 52 20 74 65 72 6d | 65 64 20 73 74 72 69 6e | CR term|ed strin|
|00000ef0| 67 20 74 6f 20 54 4e 43 | 0d 04 88 3d 45 51 55 44 |g to TNC|...=EQUD|
|00000f00| 20 70 6f 73 74 63 6f 2d | 74 61 3b 20 26 34 46 20 | postco-|ta; &4F |
|00000f10| 49 6e 66 6f 72 6d 20 63 | 6f 64 65 20 6f 66 20 63 |Inform c|ode of c|
|00000f20| 6f 6e 66 69 67 20 74 79 | 70 65 20 70 61 72 61 6d |onfig ty|pe param|
|00000f30| 65 74 65 72 73 0d 04 92 | 40 45 51 55 44 20 63 68 |eters...|@EQUD ch|
|00000f40| 73 6e 62 74 2d 74 61 3b | 20 26 35 30 20 43 68 65 |snbt-ta;| &50 Che|
|00000f50| 63 6b 20 66 6f 72 20 73 | 74 72 65 61 6d 20 73 65 |ck for s|tream se|
|00000f60| 6e 64 69 6e 67 20 62 79 | 74 65 73 20 66 72 6f 6d |nding by|tes from|
|00000f70| 20 66 69 6c 65 0d 04 9c | 39 45 51 55 44 20 73 74 | file...|9EQUD st|
|00000f80| 6f 69 70 62 2d 74 61 3b | 20 26 35 31 20 49 6e 70 |oipb-ta;| &51 Inp|
|00000f90| 75 74 20 74 6f 20 74 65 | 6d 70 20 73 65 72 69 61 |ut to te|mp seria|
|00000fa0| 6c 20 69 6e 70 75 74 20 | 62 75 66 66 65 72 0d 04 |l input |buffer..|
|00000fb0| a6 40 45 51 55 44 20 63 | 68 61 72 64 69 2d 74 61 |.@EQUD c|hardi-ta|
|00000fc0| 3b 20 26 35 32 20 44 69 | 73 74 72 69 62 75 74 65 |; &52 Di|stribute|
|00000fd0| 20 74 65 6d 70 20 73 65 | 72 69 61 6c 20 62 75 66 | temp se|rial buf|
|00000fe0| 66 65 72 20 74 6f 20 6f | 75 74 70 75 74 73 0d 04 |fer to o|utputs..|
|00000ff0| b0 38 45 51 55 44 20 64 | 72 69 76 70 61 2d 74 61 |.8EQUD d|rivpa-ta|
|00001000| 3b 20 26 35 33 20 49 6e | 66 6f 72 6d 20 63 6f 64 |; &53 In|form cod|
|00001010| 65 20 6f 66 20 64 72 69 | 76 65 72 20 70 61 72 61 |e of dri|ver para|
|00001020| 6d 65 74 65 72 73 0d 04 | ba 30 45 51 55 44 20 72 |meters..|.0EQUD r|
|00001030| 6d 6f 64 63 6f 2d 74 61 | 3b 20 26 35 34 20 52 65 |modco-ta|; &54 Re|
|00001040| 61 64 20 6d 6f 64 65 6d | 20 63 6f 6e 74 72 6f 6c |ad modem| control|
|00001050| 20 6c 69 6e 65 73 0d 04 | c4 3c 45 51 55 44 20 72 | lines..|.<EQUD r|
|00001060| 6d 6f 64 63 72 2d 74 61 | 3b 20 26 35 35 20 52 65 |modcr-ta|; &55 Re|
|00001070| 73 65 76 65 64 20 66 6f | 72 20 6d 6f 72 65 20 6d |seved fo|r more m|
|00001080| 6f 64 65 6d 20 63 6f 6e | 74 72 6f 6c 20 6c 69 6e |odem con|trol lin|
|00001090| 65 73 0d 04 ce 33 45 51 | 55 44 20 67 70 64 72 63 |es...3EQ|UD gpdrc|
|000010a0| 6c 2d 74 61 3b 20 26 35 | 36 20 47 65 6e 65 72 61 |l-ta; &5|6 Genera|
|000010b0| 6c 20 50 75 72 70 6f 73 | 65 20 64 72 69 76 65 72 |l Purpos|e driver|
|000010c0| 20 63 61 6c 6c 0d 04 d8 | 0d 2e 74 6e 63 75 74 69 | call...|..tncuti|
|000010d0| 6c 73 0d 04 e2 3c 54 45 | 51 20 52 30 2c 23 26 38 |ls...<TE|Q R0,#&8|
|000010e0| 36 3a 42 45 51 20 73 65 | 6e 64 62 72 65 61 6b 3b |6:BEQ se|ndbreak;|
|000010f0| 20 20 20 53 65 6e 64 20 | 62 72 65 61 6b 20 6c 65 | Send |break le|
|00001100| 76 65 6c 20 74 6f 20 74 | 68 65 20 54 4e 43 0d 04 |vel to t|he TNC..|
|00001110| ec 3c 54 45 51 20 52 30 | 2c 23 26 38 38 3a 42 45 |.<TEQ R0|,#&88:BE|
|00001120| 51 20 63 6c 6f 63 6b 6c | 6f 61 64 3b 20 20 20 4c |Q clockl|oad; L|
|00001130| 6f 61 64 20 74 68 65 20 | 63 6c 6f 63 6b 20 69 6e |oad the |clock in|
|00001140| 74 6f 20 74 68 65 20 54 | 4e 43 0d 04 f6 31 54 45 |to the T|NC...1TE|
|00001150| 51 20 52 30 2c 23 26 38 | 39 3a 42 45 51 20 74 6e |Q R0,#&8|9:BEQ tn|
|00001160| 63 74 79 70 65 3b 20 20 | 20 20 20 53 65 74 20 74 |ctype; | Set t|
|00001170| 68 65 20 54 4e 43 20 74 | 79 70 65 0d 05 00 3a 54 |he TNC t|ype...:T|
|00001180| 45 51 20 52 30 2c 23 26 | 39 30 3a 42 45 51 20 73 |EQ R0,#&|90:BEQ s|
|00001190| 70 72 69 74 65 6c 6f 61 | 64 3b 4c 6f 61 64 20 73 |priteloa|d;Load s|
|000011a0| 70 72 69 74 65 73 20 69 | 6e 74 6f 20 77 69 6d 70 |prites i|nto wimp|
|000011b0| 20 61 72 65 61 0d 05 0a | 04 0d 05 14 0b 2e 61 64 | area...|......ad|
|000011c0| 64 65 72 72 0d 05 1e 0b | 2e 72 6d 6f 64 63 72 0d |derr....|.rmodcr.|
|000011d0| 05 28 27 3b 6d 61 6b 65 | 20 65 72 72 6f 72 20 69 |.(';make| error i|
|000011e0| 66 20 52 30 20 63 61 6e | 27 74 20 62 65 20 73 65 |f R0 can|'t be se|
|000011f0| 72 76 69 63 65 64 0d 05 | 32 36 41 44 52 20 52 31 |rviced..|26ADR R1|
|00001200| 2c 63 61 6c 6c 65 72 72 | 6f 72 3a 4d 4f 56 20 52 |,callerr|or:MOV R|
|00001210| 32 2c 23 34 3a 53 57 49 | 22 4f 53 5f 42 69 6e 61 |2,#4:SWI|"OS_Bina|
|00001220| 72 79 54 6f 44 65 63 69 | 6d 61 6c 22 0d 05 3c 30 |ryToDeci|mal"..<0|
|00001230| 41 44 52 20 52 30 2c 63 | 61 6c 6c 65 72 72 6f 72 |ADR R0,c|allerror|
|00001240| 3a 42 4c 20 72 65 70 6f | 72 74 65 72 72 6f 72 3a |:BL repo|rterror:|
|00001250| 42 20 6d 61 73 74 65 72 | 65 78 69 74 0d 05 46 04 |B master|exit..F.|
|00001260| 0d 05 50 50 2e 63 61 6c | 6c 65 72 72 6f 72 3a 45 |..PP.cal|lerror:E|
|00001270| 51 55 44 20 30 3a 45 51 | 55 53 20 22 49 6e 74 65 |QUD 0:EQ|US "Inte|
|00001280| 72 6e 61 6c 20 45 72 72 | 6f 72 20 2d 20 43 6f 64 |rnal Err|or - Cod|
|00001290| 65 20 63 61 6c 6c 20 20 | 20 20 20 20 6e 6f 74 20 |e call | not |
|000012a0| 73 75 70 70 6f 72 74 65 | 64 22 3a 45 51 55 42 30 |supporte|d":EQUB0|
|000012b0| 0d 05 5a 09 41 4c 49 47 | 4e 0d 05 64 05 3b 0d 05 |..Z.ALIG|N..d.;..|
|000012c0| 6e 16 3b 20 53 65 74 20 | 55 70 20 56 61 72 69 61 |n.; Set |Up Varia|
|000012d0| 62 6c 65 73 0d 05 78 16 | 3b 3d 3d 3d 3d 3d 3d 3d |bles..x.|;=======|
|000012e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 05 82 05 3b 0d |========|==....;.|
|000012f0| 05 8c 14 3b 46 6c 61 67 | 73 20 6c 69 76 65 20 68 |...;Flag|s live h|
|00001300| 65 72 65 0d 05 96 42 2e | 62 61 73 66 6c 61 67 3a |ere...B.|basflag:|
|00001310| 45 51 55 44 20 36 39 3a | 2e 69 70 75 73 65 72 3a |EQUD 69:|.ipuser:|
|00001320| 45 51 55 42 30 3a 2e 74 | 6e 63 6e 75 6d 62 3a 45 |EQUB0:.t|ncnumb:E|
|00001330| 51 55 42 20 30 3a 2e 76 | 65 72 73 69 6f 6e 3a 45 |QUB 0:.v|ersion:E|
|00001340| 51 55 42 31 37 0d 05 a0 | 41 2e 6c 74 78 3a 45 51 |QUB17...|A.ltx:EQ|
|00001350| 55 42 30 3a 2e 6c 72 78 | 3a 45 51 55 42 30 3a 2e |UB0:.lrx|:EQUB0:.|
|00001360| 73 74 6d 3a 45 51 55 42 | 20 30 3a 2e 64 70 6f 3a |stm:EQUB| 0:.dpo:|
|00001370| 45 51 55 42 20 30 3a 41 | 4c 49 47 4e 3a 2e 74 73 |EQUB 0:A|LIGN:.ts|
|00001380| 3a 45 51 55 44 30 0d 05 | aa 11 2e 62 6c 6f 63 6b |:EQUD0..|...block|
|00001390| 3a 45 51 55 44 20 30 0d | 05 b4 36 2e 62 75 66 66 |:EQUD 0.|..6.buff|
|000013a0| 65 72 62 61 73 65 3a 45 | 51 55 44 20 30 3a 2e 66 |erbase:E|QUD 0:.f|
|000013b0| 6c 61 67 62 61 73 65 3a | 45 51 55 44 20 30 3a 2e |lagbase:|EQUD 0:.|
|000013c0| 73 74 72 69 6e 67 3a 45 | 51 55 44 20 30 0d 05 be |string:E|QUD 0...|
|000013d0| 45 2e 74 65 78 74 62 61 | 73 65 3a 45 51 55 44 20 |E.textba|se:EQUD |
|000013e0| 30 3a 2e 74 65 72 6d 6c | 69 6e 65 3a 45 51 55 44 |0:.terml|ine:EQUD|
|000013f0| 20 30 3a 2e 6c 69 6e 65 | 6c 65 6e 3a 45 51 55 44 | 0:.line|len:EQUD|
|00001400| 30 3a 2e 69 70 62 75 66 | 66 65 72 3a 45 51 55 44 |0:.ipbuf|fer:EQUD|
|00001410| 20 30 0d 05 c8 2b 2e 62 | 75 66 70 6f 73 6e 3a 45 | 0...+.b|ufposn:E|
|00001420| 51 55 44 20 30 3a 2e 62 | 6c 62 3a 45 51 55 44 20 |QUD 0:.b|lb:EQUD |
|00001430| 30 3a 2e 73 73 6c 3a 45 | 51 55 44 20 30 0d 05 d2 |0:.ssl:E|QUD 0...|
|00001440| 40 2e 69 70 69 6e 3a 45 | 51 55 44 20 30 3a 2e 69 |@.ipin:E|QUD 0:.i|
|00001450| 70 6f 75 74 3a 45 51 55 | 44 20 30 3a 2e 69 70 73 |pout:EQU|D 0:.ips|
|00001460| 77 66 6c 3a 45 51 55 44 | 20 30 3a 2e 73 77 69 74 |wfl:EQUD| 0:.swit|
|00001470| 63 68 62 61 73 65 3a 45 | 51 55 44 20 30 0d 05 dc |chbase:E|QUD 0...|
|00001480| 22 3b 20 2a 20 69 70 73 | 77 66 6c 20 74 6f 20 31 |"; * ips|wfl to 1|
|00001490| 20 66 6f 72 20 6d 75 6c | 74 73 74 72 65 61 6d 0d | for mul|tstream.|
|000014a0| 05 e6 11 2e 64 72 69 76 | 65 72 3a 45 51 55 44 30 |....driv|er:EQUD0|
|000014b0| 0d 05 f0 09 41 4c 49 47 | 4e 0d 05 fa 3a 2e 72 65 |....ALIG|N...:.re|
|000014c0| 74 76 65 72 3b 20 72 65 | 74 75 72 6e 20 63 6f 64 |tver; re|turn cod|
|000014d0| 65 20 76 65 72 73 69 6f | 6e 20 69 6e 20 76 61 72 |e versio|n in var|
|000014e0| 69 61 62 6c 65 20 66 6f | 6c 6c 77 69 6e 67 20 63 |iable fo|llwing c|
|000014f0| 6f 64 65 0d 06 04 20 42 | 49 43 20 52 31 2c 52 31 |ode... B|IC R1,R1|
|00001500| 2c 52 31 3a 4c 44 52 42 | 20 52 31 2c 76 65 72 73 |,R1:LDRB| R1,vers|
|00001510| 69 6f 6e 0d 06 0e 27 42 | 49 43 20 52 30 2c 52 30 |ion...'B|IC R0,R0|
|00001520| 2c 52 30 3a 42 4c 20 62 | 61 73 69 6e 74 3a 53 54 |,R0:BL b|asint:ST|
|00001530| 52 42 20 52 31 2c 5b 52 | 30 5d 0d 06 18 10 42 20 |RB R1,[R|0]....B |
|00001540| 6d 61 73 74 65 72 65 78 | 69 74 0d 06 22 04 0d 06 |masterex|it.."...|
|00001550| 2c 29 2e 69 6e 69 74 73 | 74 3b 20 69 6e 69 74 69 |,).inits|t; initi|
|00001560| 61 6c 69 73 65 20 76 61 | 72 69 61 62 6c 65 73 20 |alise va|riables |
|00001570| 69 6e 20 63 6f 64 65 0d | 06 36 10 53 54 52 20 52 |in code.|.6.STR R|
|00001580| 31 2c 62 6c 6f 63 6b 0d | 06 40 2c 4d 4f 56 20 52 |1,block.|.@,MOV R|
|00001590| 35 2c 52 31 3a 42 49 43 | 20 52 32 2c 52 32 2c 52 |5,R1:BIC| R2,R2,R|
|000015a0| 32 3a 41 44 52 20 52 33 | 2c 62 75 66 66 65 72 62 |2:ADR R3|,bufferb|
|000015b0| 61 73 65 0d 06 4a 0e 2e | 74 6f 70 69 6e 69 74 73 |ase..J..|topinits|
|000015c0| 74 0d 06 54 21 4c 44 52 | 20 52 30 2c 5b 52 35 2c |t..T!LDR| R0,[R5,|
|000015d0| 52 32 5d 3a 53 54 52 20 | 52 30 2c 5b 52 33 2c 52 |R2]:STR |R0,[R3,R|
|000015e0| 32 5d 0d 06 5e 1c 43 4d | 50 20 52 32 2c 23 32 34 |2]..^.CM|P R2,#24|
|000015f0| 3a 42 47 45 20 6f 75 74 | 69 6e 69 74 73 74 0d 06 |:BGE out|initst..|
|00001600| 68 1c 41 44 44 20 52 32 | 2c 52 32 2c 23 34 3a 42 |h.ADD R2|,R2,#4:B|
|00001610| 20 74 6f 70 69 6e 69 74 | 73 74 0d 06 72 0e 2e 6f | topinit|st..r..o|
|00001620| 75 74 69 6e 69 74 73 74 | 0d 06 7c 2c 4c 44 52 20 |utinitst|..|,LDR |
|00001630| 52 30 2c 5b 52 35 2c 23 | 32 38 5d 3a 80 20 52 30 |R0,[R5,#|28]:. R0|
|00001640| 2c 52 30 2c 23 26 46 46 | 3a 53 54 52 42 20 52 30 |,R0,#&FF|:STRB R0|
|00001650| 2c 73 74 6d 0d 06 86 25 | 4c 44 52 20 52 30 2c 5b |,stm...%|LDR R0,[|
|00001660| 52 35 2c 23 33 32 5d 3a | 53 54 52 20 52 30 2c 73 |R5,#32]:|STR R0,s|
|00001670| 77 69 74 63 68 62 61 73 | 65 0d 06 90 11 2e 66 69 |witchbas|e.....fi|
|00001680| 6c 6c 66 6c 61 67 62 61 | 73 65 0d 06 9a 5c 42 49 |llflagba|se...\BI|
|00001690| 43 20 52 30 2c 52 30 2c | 52 30 3a 4d 4f 56 20 52 |C R0,R0,|R0:MOV R|
|000016a0| 30 2c 23 26 32 30 30 3a | 4c 44 52 20 52 31 2c 66 |0,#&200:|LDR R1,f|
|000016b0| 6c 61 67 62 61 73 65 3a | 53 54 4d 46 41 20 52 31 |lagbase:|STMFA R1|
|000016c0| 32 21 2c 7b 52 31 34 7d | 3a 42 4c 20 63 6c 65 61 |2!,{R14}|:BL clea|
|000016d0| 72 62 61 73 65 3a 4c 44 | 4d 46 41 20 52 31 32 21 |rbase:LD|MFA R12!|
|000016e0| 2c 7b 52 31 34 7d 0d 06 | a4 10 42 20 6d 61 73 74 |,{R14}..|..B mast|
|000016f0| 65 72 65 78 69 74 0d 06 | ae 04 0d 06 b8 45 2e 70 |erexit..|.....E.p|
|00001700| 6f 73 74 63 6f 3b 20 20 | 49 6e 69 74 69 61 6c 69 |ostco; |Initiali|
|00001710| 73 65 20 54 4e 43 20 61 | 6e 64 20 63 6f 6e 66 69 |se TNC a|nd confi|
|00001720| 67 20 73 70 65 63 69 66 | 69 63 20 70 61 72 61 6d |g specif|ic param|
|00001730| 65 74 65 72 73 20 69 6e | 74 6f 20 63 6f 64 65 0d |eters in|to code.|
|00001740| 06 c2 10 4c 44 52 20 52 | 35 2c 62 6c 6f 63 6b 0d |...LDR R|5,block.|
|00001750| 06 cc 1d 4c 44 52 20 52 | 30 2c 5b 52 35 2c 23 30 |...LDR R|0,[R5,#0|
|00001760| 5d 3a 53 54 52 20 52 30 | 2c 62 6c 62 0d 06 d6 1d |]:STR R0|,blb....|
|00001770| 4c 44 52 20 52 30 2c 5b | 52 35 2c 23 34 5d 3a 53 |LDR R0,[|R5,#4]:S|
|00001780| 54 52 20 52 30 2c 73 73 | 6c 0d 06 e0 10 42 20 6d |TR R0,ss|l....B m|
|00001790| 61 73 74 65 72 65 78 69 | 74 0d 06 ea 04 0d 06 f4 |asterexi|t.......|
|000017a0| 20 2e 64 72 69 76 70 61 | 20 20 3b 20 44 72 69 76 | .drivpa| ; Driv|
|000017b0| 65 72 20 50 61 72 61 6d | 65 74 65 72 73 0d 06 fe |er Param|eters...|
|000017c0| 10 4c 44 52 20 52 35 2c | 62 6c 6f 63 6b 0d 07 08 |.LDR R5,|block...|
|000017d0| 20 4c 44 52 20 52 30 2c | 5b 52 35 2c 23 30 5d 3a | LDR R0,|[R5,#0]:|
|000017e0| 53 54 52 20 52 30 2c 64 | 72 69 76 65 72 0d 07 12 |STR R0,d|river...|
|000017f0| 1e 4c 44 52 20 52 30 2c | 5b 52 35 2c 23 34 5d 3a |.LDR R0,|[R5,#4]:|
|00001800| 53 54 52 42 20 52 30 2c | 64 70 6f 0d 07 1c 10 42 |STRB R0,|dpo....B|
|00001810| 20 6d 61 73 74 65 72 65 | 78 69 74 0d 07 26 04 0d | mastere|xit..&..|
|00001820| 07 30 49 2e 62 61 73 69 | 6e 74 3b 20 4c 6f 61 64 |.0I.basi|nt; Load|
|00001830| 20 69 6e 74 20 76 61 72 | 69 61 62 6c 65 20 61 64 | int var|iable ad|
|00001840| 64 72 65 73 73 20 69 6e | 74 6f 20 52 30 3b 20 45 |dress in|to R0; E|
|00001850| 6e 74 65 72 65 64 20 77 | 69 74 68 20 6f 66 66 73 |ntered w|ith offs|
|00001860| 65 74 20 69 6e 20 52 30 | 0d 07 3a 16 53 54 4d 46 |et in R0|..:.STMF|
|00001870| 41 20 52 31 32 21 2c 7b | 52 31 2c 52 32 7d 0d 07 |A R12!,{|R1,R2}..|
|00001880| 44 22 4d 4f 56 20 52 30 | 2c 52 30 2c 4c 53 4c 23 |D"MOV R0|,R0,LSL#|
|00001890| 31 3a 4c 44 52 20 52 30 | 2c 5b 52 39 2c 52 30 5d |1:LDR R0|,[R9,R0]|
|000018a0| 0d 07 4e 13 4c 44 52 42 | 20 52 32 2c 5b 52 30 2c |..N.LDRB| R2,[R0,|
|000018b0| 23 33 5d 0d 07 58 25 4c | 44 52 42 20 52 31 2c 5b |#3]..X%L|DRB R1,[|
|000018c0| 52 30 2c 23 32 5d 3a 84 | 52 20 52 32 2c 52 31 2c |R0,#2]:.|R R2,R1,|
|000018d0| 52 32 2c 4c 53 4c 23 38 | 0d 07 62 25 4c 44 52 42 |R2,LSL#8|..b%LDRB|
|000018e0| 20 52 31 2c 5b 52 30 2c | 23 31 5d 3a 84 52 20 52 | R1,[R0,|#1]:.R R|
|000018f0| 32 2c 52 31 2c 52 32 2c | 4c 53 4c 23 38 0d 07 6c |2,R1,R2,|LSL#8..l|
|00001900| 25 4c 44 52 42 20 52 31 | 2c 5b 52 30 2c 23 30 5d |%LDRB R1|,[R0,#0]|
|00001910| 3a 84 52 20 52 32 2c 52 | 31 2c 52 32 2c 4c 53 4c |:.R R2,R|1,R2,LSL|
|00001920| 23 38 0d 07 76 22 4c 44 | 4d 46 41 20 52 31 32 21 |#8..v"LD|MFA R12!|
|00001930| 2c 7b 52 31 2c 52 32 7d | 3a 4d 4f 56 20 52 31 35 |,{R1,R2}|:MOV R15|
|00001940| 2c 52 31 34 0d 07 80 04 | 0d 07 8a 0e 2e 63 6c 65 |,R14....|.....cle|
|00001950| 61 72 62 61 73 65 0d 07 | 94 16 53 54 4d 46 41 20 |arbase..|..STMFA |
|00001960| 52 31 32 21 2c 7b 52 30 | 2d 52 33 7d 0d 07 9e 27 |R12!,{R0|-R3}...'|
|00001970| 4d 4f 56 20 52 32 2c 52 | 30 3a 42 49 43 20 52 30 |MOV R2,R|0:BIC R0|
|00001980| 2c 52 30 2c 52 30 3a 42 | 49 43 20 52 33 2c 52 33 |,R0,R0:B|IC R3,R3|
|00001990| 2c 52 33 0d 07 a8 11 2e | 74 6f 70 63 6c 65 61 72 |,R3.....|topclear|
|000019a0| 62 61 73 65 0d 07 b2 3a | 53 54 52 20 52 30 2c 5b |base...:|STR R0,[|
|000019b0| 52 31 2c 52 33 5d 3a 41 | 44 44 20 52 33 2c 52 33 |R1,R3]:A|DD R3,R3|
|000019c0| 2c 23 34 3a 43 4d 50 20 | 52 33 2c 52 32 3a 42 4c |,#4:CMP |R3,R2:BL|
|000019d0| 54 20 74 6f 70 63 6c 65 | 61 72 62 61 73 65 0d 07 |T topcle|arbase..|
|000019e0| bc 22 4c 44 4d 46 41 20 | 52 31 32 21 2c 7b 52 30 |."LDMFA |R12!,{R0|
|000019f0| 2d 52 33 7d 3a 4d 4f 56 | 20 52 31 35 2c 52 31 34 |-R3}:MOV| R15,R14|
|00001a00| 0d 07 c6 04 0d 07 d0 23 | 2e 63 6c 65 61 72 61 3a |.......#|.cleara:|
|00001a10| 42 4c 20 63 6c 65 61 72 | 65 72 3a 42 20 6d 61 73 |BL clear|er:B mas|
|00001a20| 74 65 72 65 78 69 74 0d | 07 da 04 0d 07 e4 0c 2e |terexit.|........|
|00001a30| 63 6c 65 61 72 65 72 0d | 07 ee 30 3b 20 50 75 74 |clearer.|..0; Put|
|00001a40| 73 20 76 61 6c 75 65 73 | 20 6f 66 20 7a 65 72 6f |s values| of zero|
|00001a50| 20 69 6e 74 6f 20 61 6e | 20 61 72 65 61 20 6f 66 | into an| area of|
|00001a60| 20 6d 65 6d 6f 72 79 0d | 07 f8 32 3b 20 45 6e 74 | memory.|..2; Ent|
|00001a70| 65 72 20 77 69 74 68 20 | 73 74 61 72 74 20 6f 66 |er with |start of|
|00001a80| 20 61 72 65 61 20 69 6e | 20 52 31 2c 20 4c 65 6e | area in| R1, Len|
|00001a90| 67 74 68 20 69 6e 20 52 | 32 0d 08 02 1d 42 49 43 |gth in R|2....BIC|
|00001aa0| 20 52 33 2c 52 33 2c 52 | 33 3a 42 49 43 20 52 30 | R3,R3,R|3:BIC R0|
|00001ab0| 2c 52 30 2c 52 30 0d 08 | 0c 0f 2e 74 6f 70 63 6c |,R0,R0..|...topcl|
|00001ac0| 65 61 72 65 72 0d 08 16 | 39 53 54 52 42 20 52 30 |earer...|9STRB R0|
|00001ad0| 2c 5b 52 31 2c 52 33 5d | 3a 41 44 44 20 52 33 2c |,[R1,R3]|:ADD R3,|
|00001ae0| 52 33 2c 23 31 3a 43 4d | 50 20 52 33 2c 52 32 3a |R3,#1:CM|P R3,R2:|
|00001af0| 42 4c 54 20 74 6f 70 63 | 6c 65 61 72 65 72 0d 08 |BLT topc|learer..|
|00001b00| 20 0f 4d 4f 56 20 52 31 | 35 2c 52 31 34 0d 08 2a | .MOV R1|5,R14..*|
|00001b10| 04 0d 08 34 04 0d 08 3e | 44 2e 73 68 75 63 6f 6e |...4...>|D.shucon|
|00001b20| 3b 53 68 75 66 66 6c 65 | 20 69 63 6f 6e 73 2c 20 |;Shuffle| icons, |
|00001b30| 57 69 6e 64 6f 77 20 68 | 61 6e 64 6c 65 20 69 6e |Window h|andle in|
|00001b40| 20 52 31 2c 20 6d 69 6e | 20 69 63 6f 6e 6f 20 52 | R1, min| icono R|
|00001b50| 32 2c 20 6d 61 78 20 52 | 33 0d 08 48 1c 42 4c 20 |2, max R|3..H.BL |
|00001b60| 73 68 75 69 63 6f 6e 73 | 3a 42 20 6d 61 73 74 65 |shuicons|:B maste|
|00001b70| 72 65 78 69 74 0d 08 52 | 04 0d 08 5c 3d 2e 62 61 |rexit..R|...\=.ba|
|00001b80| 75 64 73 74 3b 20 53 65 | 74 20 74 68 65 20 73 65 |udst; Se|t the se|
|00001b90| 72 69 61 6c 20 62 61 75 | 64 20 72 61 74 65 20 66 |rial bau|d rate f|
|00001ba0| 72 6f 6d 20 61 20 72 65 | 61 6c 20 76 61 6c 75 65 |rom a re|al value|
|00001bb0| 20 69 6e 20 52 31 0d 08 | 66 1b 42 4c 20 73 65 74 | in R1..|f.BL set|
|00001bc0| 62 61 75 64 3a 42 20 6d | 61 73 74 65 72 65 78 69 |baud:B m|asterexi|
|00001bd0| 74 0d 08 70 04 0d 08 7a | 4a 2e 62 61 75 64 64 65 |t..p...z|J.baudde|
|00001be0| 3b 20 62 61 75 64 20 72 | 61 74 65 20 6e 75 6d 62 |; baud r|ate numb|
|00001bf0| 65 72 20 28 30 2d 31 35 | 29 20 49 4e 20 52 31 2c |er (0-15|) IN R1,|
|00001c00| 20 70 6f 69 6e 74 20 74 | 6f 20 24 20 66 6f 72 20 | point t|o $ for |
|00001c10| 72 65 73 75 6c 74 20 28 | 39 36 30 30 29 52 32 0d |result (|9600)R2.|
|00001c20| 08 84 1c 42 4c 20 64 65 | 73 63 62 61 75 64 3a 42 |...BL de|scbaud:B|
|00001c30| 20 6d 61 73 74 65 72 65 | 78 69 74 0d 08 8e 46 2e | mastere|xit...F.|
|00001c40| 73 68 75 69 63 6f 6e 73 | 3b 53 68 75 66 66 6c 65 |shuicons|;Shuffle|
|00001c50| 20 69 63 6f 6e 73 2c 20 | 57 69 6e 64 6f 77 20 68 | icons, |Window h|
|00001c60| 61 6e 64 6c 65 20 69 6e | 20 52 31 2c 20 6d 69 6e |andle in| R1, min|
|00001c70| 20 69 63 6f 6e 6f 20 52 | 32 2c 20 6d 61 78 20 52 | icono R|2, max R|
|00001c80| 33 0d 08 98 10 4c 44 52 | 20 52 35 2c 62 6c 6f 63 |3....LDR| R5,bloc|
|00001c90| 6b 0d 08 a2 10 2e 74 6f | 70 73 68 75 69 63 6f 6e |k.....to|pshuicon|
|00001ca0| 73 0d 08 ac 35 41 44 44 | 20 52 34 2c 52 32 2c 23 |s...5ADD| R4,R2,#|
|00001cb0| 31 3a 4d 4f 56 20 52 36 | 2c 52 31 3a 53 54 52 20 |1:MOV R6|,R1:STR |
|00001cc0| 52 31 2c 5b 52 35 5d 3a | 53 54 52 20 52 34 2c 5b |R1,[R5]:|STR R4,[|
|00001cd0| 52 35 2c 23 34 5d 0d 08 | b6 3d 53 54 4d 46 41 20 |R5,#4]..|.=STMFA |
|00001ce0| 52 31 32 21 2c 7b 52 30 | 2d 52 31 31 2c 52 31 34 |R12!,{R0|-R11,R14|
|00001cf0| 7d 3a 4d 4f 56 20 52 31 | 2c 52 35 3a 53 57 49 20 |}:MOV R1|,R5:SWI |
|00001d00| 22 57 69 6d 70 5f 47 65 | 74 49 63 6f 6e 53 74 61 |"Wimp_Ge|tIconSta|
|00001d10| 74 65 22 0d 08 c0 42 4d | 4f 56 20 52 31 2c 52 36 |te"...BM|OV R1,R6|
|00001d20| 3a 4c 44 52 20 52 33 2c | 5b 52 35 2c 23 32 38 5d |:LDR R3,|[R5,#28]|
|00001d30| 3a 42 4c 20 77 72 69 74 | 65 69 63 6f 6e 3a 4c 44 |:BL writ|eicon:LD|
|00001d40| 4d 46 41 20 52 31 32 21 | 2c 7b 52 30 2d 52 31 31 |MFA R12!|,{R0-R11|
|00001d50| 2c 52 31 34 7d 0d 08 ca | 33 43 4d 50 20 52 32 2c |,R14}...|3CMP R2,|
|00001d60| 52 33 3a ec 51 20 52 31 | 35 2c 52 31 34 3a 41 44 |R3:.Q R1|5,R14:AD|
|00001d70| 44 20 52 32 2c 52 32 2c | 23 31 3a 42 20 74 6f 70 |D R2,R2,|#1:B top|
|00001d80| 73 68 75 69 63 6f 6e 73 | 0d 08 d4 04 0d 08 de 42 |shuicons|.......B|
|00001d90| 2e 73 68 69 66 74 6f 64 | 63 68 61 72 73 3b 4d 6f |.shiftod|chars;Mo|
|00001da0| 76 65 20 43 52 20 74 65 | 72 6d 65 64 20 24 20 46 |ve CR te|rmed $ F|
|00001db0| 72 6f 6d 20 69 6e 20 31 | 20 2c 20 74 6f 20 69 6e |rom in 1| , to in|
|00001dc0| 20 32 2c 20 6c 69 6d 69 | 74 20 69 6e 20 33 0d 08 | 2, limi|t in 3..|
|00001dd0| e8 1d 42 49 43 20 52 34 | 2c 52 34 2c 52 34 3a 42 |..BIC R4|,R4,R4:B|
|00001de0| 49 43 20 52 30 2c 52 30 | 2c 52 30 0d 08 f2 0d 2e |IC R0,R0|,R0.....|
|00001df0| 74 6f 70 73 68 69 66 74 | 0d 08 fc 23 4c 44 52 42 |topshift|...#LDRB|
|00001e00| 20 52 30 2c 5b 52 31 2c | 52 34 5d 3a 53 54 52 42 | R0,[R1,|R4]:STRB|
|00001e10| 20 52 30 2c 5b 52 32 2c | 52 34 5d 0d 09 06 4d 43 | R0,[R2,|R4]...MC|
|00001e20| 4d 50 20 52 34 2c 52 33 | 3a 4d 4f 56 47 45 20 52 |MP R4,R3|:MOVGE R|
|00001e30| 31 35 2c 52 31 34 3a 41 | 44 44 20 52 34 2c 52 34 |15,R14:A|DD R4,R4|
|00001e40| 2c 23 31 3a 43 4d 50 20 | 52 30 2c 23 26 30 44 3a |,#1:CMP |R0,#&0D:|
|00001e50| 42 4e 45 20 74 6f 70 73 | 68 69 66 74 3a 4d 4f 56 |BNE tops|hift:MOV|
|00001e60| 20 52 31 35 2c 52 31 34 | 0d 09 10 04 0d 09 1a 44 | R15,R14|.......D|
|00001e70| 2e 73 68 69 66 74 63 68 | 61 72 73 3b 20 20 4d 6f |.shiftch|ars; Mo|
|00001e80| 76 65 20 62 79 74 65 73 | 2e 20 52 31 3d 20 53 6f |ve bytes|. R1= So|
|00001e90| 75 72 63 65 2c 20 52 32 | 3d 20 44 65 73 74 69 6e |urce, R2|= Destin|
|00001ea0| 61 74 69 6f 6e 2c 20 52 | 33 3d 4c 65 6e 67 74 68 |ation, R|3=Length|
|00001eb0| 0d 09 24 16 53 54 4d 46 | 41 20 52 31 32 21 2c 7b |..$.STMF|A R12!,{|
|00001ec0| 52 30 2d 52 34 7d 0d 09 | 2e 2b 42 49 43 20 52 34 |R0-R4}..|.+BIC R4|
|00001ed0| 2c 52 34 2c 52 34 3a 42 | 49 43 20 52 30 2c 52 30 |,R4,R4:B|IC R0,R0|
|00001ee0| 2c 52 30 3a 53 55 42 53 | 20 52 33 2c 52 33 2c 23 |,R0:SUBS| R3,R3,#|
|00001ef0| 34 0d 09 38 13 2e 6d 74 | 6f 70 73 68 69 66 74 63 |4..8..mt|opshiftc|
|00001f00| 68 61 72 73 0d 09 42 3d | 43 4d 50 20 52 34 2c 52 |hars..B=|CMP R4,R|
|00001f10| 33 3a 42 47 54 20 74 6f | 70 73 68 69 66 74 63 68 |3:BGT to|pshiftch|
|00001f20| 61 72 73 3a 4c 44 52 20 | 52 30 2c 5b 52 31 2c 52 |ars:LDR |R0,[R1,R|
|00001f30| 34 5d 3a 53 54 52 20 52 | 30 2c 5b 52 32 2c 52 34 |4]:STR R|0,[R2,R4|
|00001f40| 5d 0d 09 4c 21 41 44 44 | 20 52 34 2c 52 34 2c 23 |]..L!ADD| R4,R4,#|
|00001f50| 34 3a 42 20 6d 74 6f 70 | 73 68 69 66 74 63 68 61 |4:B mtop|shiftcha|
|00001f60| 72 73 0d 09 56 12 2e 74 | 6f 70 73 68 69 66 74 63 |rs..V..t|opshiftc|
|00001f70| 68 61 72 73 0d 09 60 11 | 41 44 44 53 20 52 33 2c |hars..`.|ADDS R3,|
|00001f80| 52 33 2c 23 34 0d 09 6a | 23 4c 44 52 42 20 52 30 |R3,#4..j|#LDRB R0|
|00001f90| 2c 5b 52 31 2c 52 34 5d | 3a 53 54 52 42 20 52 30 |,[R1,R4]|:STRB R0|
|00001fa0| 2c 5b 52 32 2c 52 34 5d | 0d 09 74 2c 41 44 44 20 |,[R2,R4]|..t,ADD |
|00001fb0| 52 34 2c 52 34 2c 23 31 | 3a 43 4d 50 20 52 34 2c |R4,R4,#1|:CMP R4,|
|00001fc0| 52 33 3a 42 4c 54 20 74 | 6f 70 73 68 69 66 74 63 |R3:BLT t|opshiftc|
|00001fd0| 68 61 72 73 0d 09 7e 22 | 4c 44 4d 46 41 20 52 31 |hars..~"|LDMFA R1|
|00001fe0| 32 21 2c 7b 52 30 2d 52 | 34 7d 3a 4d 4f 56 20 52 |2!,{R0-R|4}:MOV R|
|00001ff0| 31 35 2c 52 31 34 0d 09 | 88 04 0d 09 92 04 0d 09 |15,R14..|........|
|00002000| 9c 1a 3b 20 53 65 72 69 | 61 6c 20 70 6f 72 74 20 |..; Seri|al port |
|00002010| 72 6f 75 74 69 6e 65 73 | 0d 09 a6 1a 3b 20 3d 3d |routines|....; ==|
|00002020| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002030| 3d 3d 0d 09 b0 04 0d 09 | ba 04 0d 09 c4 0f 2e 64 |==......|.......d|
|00002040| 72 69 76 65 72 63 61 6c | 6c 0d 09 ce 1a 53 54 4d |rivercal|l....STM|
|00002050| 46 41 20 52 31 32 21 2c | 7b 52 31 2c 52 38 2c 52 |FA R12!,|{R1,R8,R|
|00002060| 31 34 7d 0d 09 d8 10 42 | 49 43 20 52 31 2c 52 31 |14}....B|IC R1,R1|
|00002070| 2c 52 31 0d 09 e2 0f 4c | 44 52 42 20 72 31 2c 64 |,R1....L|DRB r1,d|
|00002080| 70 6f 0d 09 ec 11 41 44 | 52 20 52 38 2c 64 72 69 |po....AD|R R8,dri|
|00002090| 76 65 72 0d 09 f6 16 41 | 44 52 20 52 31 34 2c 72 |ver....A|DR R14,r|
|000020a0| 65 74 64 72 69 63 61 6c | 6c 0d 0a 00 10 4c 44 52 |etdrical|l....LDR|
|000020b0| 20 52 31 35 2c 5b 52 38 | 5d 0d 0a 0a 0f 2e 72 65 | R15,[R8|].....re|
|000020c0| 74 64 72 69 63 61 6c 6c | 0d 0a 14 1a 4c 44 4d 46 |tdricall|....LDMF|
|000020d0| 41 20 52 31 32 21 2c 7b | 52 31 2c 52 38 2c 52 31 |A R12!,{|R1,R8,R1|
|000020e0| 34 7d 0d 0a 1e 0f 4d 4f | 56 20 52 31 35 2c 52 31 |4}....MO|V R15,R1|
|000020f0| 34 0d 0a 28 04 0d 0a 32 | 40 2e 67 70 64 72 63 6c |4..(...2|@.gpdrcl|
|00002100| 3b 20 20 47 65 6e 65 72 | 61 6c 20 70 75 72 70 6f |; Gener|al purpo|
|00002110| 73 65 20 64 72 69 76 65 | 72 20 63 61 6c 6c 20 2d |se drive|r call -|
|00002120| 20 53 74 6f 72 65 73 20 | 52 30 20 61 74 20 62 61 | Stores |R0 at ba|
|00002130| 73 66 6c 61 67 0d 0a 3c | 32 3b 20 20 20 20 20 20 |sflag..<|2; |
|00002140| 20 20 20 45 6e 74 65 72 | 20 77 69 74 68 20 64 72 | Enter| with dr|
|00002150| 69 76 65 72 20 63 61 6c | 6c 20 69 6e 20 72 65 67 |iver cal|l in reg|
|00002160| 69 73 74 65 72 20 31 0d | 0a 46 0d 4d 4f 56 20 52 |ister 1.|.F.MOV R|
|00002170| 30 2c 52 31 0d 0a 47 0f | 4c 44 52 42 20 72 31 2c |0,R1..G.|LDRB r1,|
|00002180| 64 70 6f 0d 0a 50 14 53 | 54 4d 46 41 20 52 31 32 |dpo..P.S|TMFA R12|
|00002190| 21 2c 7b 52 31 34 7d 0d | 0a 5a 11 42 4c 20 64 72 |!,{R14}.|.Z.BL dr|
|000021a0| 69 76 65 72 63 61 6c 6c | 0d 0a 64 13 53 54 52 20 |ivercall|..d.STR |
|000021b0| 52 30 2c 20 62 61 73 66 | 6c 61 67 0d 0a 6e 14 4c |R0, basf|lag..n.L|
|000021c0| 44 4d 46 41 20 52 31 32 | 21 2c 7b 52 31 34 7d 0d |DMFA R12|!,{R14}.|
|000021d0| 0a 78 10 42 20 6d 61 73 | 74 65 72 65 78 69 74 0d |.x.B mas|terexit.|
|000021e0| 0a 82 04 0d 0a 8c 1e 2e | 73 65 74 62 61 75 64 3b |........|setbaud;|
|000021f0| 20 52 65 61 6c 20 76 61 | 6c 75 65 20 69 6e 20 52 | Real va|lue in R|
|00002200| 31 0d 0a 96 1a 53 54 4d | 46 41 20 52 31 32 21 2c |1....STM|FA R12!,|
|00002210| 7b 52 30 2d 52 33 2c 52 | 31 34 7d 0d 0a a0 27 42 |{R0-R3,R|14}...'B|
|00002220| 49 43 20 52 30 2c 52 30 | 2c 52 30 3a 42 49 43 20 |IC R0,R0|,R0:BIC |
|00002230| 52 32 2c 52 32 2c 52 32 | 3a 4d 4f 56 20 52 32 2c |R2,R2,R2|:MOV R2,|
|00002240| 52 31 0d 0a aa 35 4d 4f | 56 20 52 30 2c 23 31 33 |R1...5MO|V R0,#13|
|00002250| 3a 42 4c 20 64 72 69 76 | 65 72 63 61 6c 6c 3a 4d |:BL driv|ercall:M|
|00002260| 4f 56 20 52 30 2c 23 31 | 34 3a 42 4c 20 64 72 69 |OV R0,#1|4:BL dri|
|00002270| 76 65 72 63 61 6c 6c 0d | 0a b4 1a 4c 44 4d 46 41 |vercall.|...LDMFA|
|00002280| 20 52 31 32 21 2c 7b 52 | 30 2d 52 33 2c 52 31 35 | R12!,{R|0-R3,R15|
|00002290| 7d 0d 0a be 04 0d 0a c8 | ab 2e 73 65 72 74 61 62 |}.......|..sertab|
|000022a0| 6c 65 3a 45 51 55 44 20 | 39 36 30 30 3a 45 51 55 |le:EQUD |9600:EQU|
|000022b0| 44 20 37 35 3a 45 51 55 | 44 20 31 35 30 3a 45 51 |D 75:EQU|D 150:EQ|
|000022c0| 55 44 20 33 30 30 3a 45 | 51 55 44 20 31 32 30 30 |UD 300:E|QUD 1200|
|000022d0| 3a 45 51 55 44 20 32 34 | 30 30 3a 45 51 55 44 20 |:EQUD 24|00:EQUD |
|000022e0| 34 38 30 30 3a 45 51 55 | 44 20 39 36 30 30 3a 45 |4800:EQU|D 9600:E|
|000022f0| 51 55 44 20 31 39 32 30 | 30 3a 45 51 55 44 20 35 |QUD 1920|0:EQUD 5|
|00002300| 30 3a 45 51 55 44 20 31 | 31 30 3a 45 51 55 44 20 |0:EQUD 1|10:EQUD |
|00002310| 31 33 34 3a 45 51 55 44 | 20 36 30 30 3a 45 51 55 |134:EQUD| 600:EQU|
|00002320| 44 20 31 38 30 30 3a 45 | 51 55 44 20 33 36 30 30 |D 1800:E|QUD 3600|
|00002330| 3a 45 51 55 44 20 37 32 | 30 30 3a 41 4c 49 47 4e |:EQUD 72|00:ALIGN|
|00002340| 0d 0a d2 04 0d 0a dc 11 | 2e 6e 6f 73 75 63 68 73 |........|.nosuchs|
|00002350| 65 72 69 61 6c 0d 0a e6 | 3a 4d 4f 56 20 52 30 2c |erial...|:MOV R0,|
|00002360| 52 31 3a 41 44 52 20 52 | 31 2c 62 61 75 64 72 61 |R1:ADR R|1,baudra|
|00002370| 74 65 65 72 72 6f 72 3a | 41 44 44 20 52 31 2c 52 |teerror:|ADD R1,R|
|00002380| 31 2c 23 34 34 3a 4d 4f | 56 20 52 32 2c 23 36 0d |1,#44:MO|V R2,#6.|
|00002390| 0a f0 30 53 57 49 22 4f | 53 5f 42 69 6e 61 72 79 |..0SWI"O|S_Binary|
|000023a0| 54 6f 44 65 63 69 6d 61 | 6c 22 3a 41 44 52 20 52 |ToDecima|l":ADR R|
|000023b0| 30 2c 62 61 75 64 72 61 | 74 65 65 72 72 6f 72 0d |0,baudra|teerror.|
|000023c0| 0a fa 3e 53 54 4d 46 41 | 20 31 32 21 2c 7b 52 31 |..>STMFA| 12!,{R1|
|000023d0| 34 7d 3a 42 4c 20 72 65 | 70 6f 72 74 65 72 72 6f |4}:BL re|porterro|
|000023e0| 72 3a 4c 44 4d 46 41 20 | 31 32 21 2c 7b 52 31 34 |r:LDMFA |12!,{R14|
|000023f0| 7d 3a 4d 4f 56 20 52 31 | 35 2c 52 31 34 0d 0b 04 |}:MOV R1|5,R14...|
|00002400| 04 0d 0b 0e 5b 2e 62 61 | 75 64 72 61 74 65 65 72 |....[.ba|udrateer|
|00002410| 72 6f 72 3a 45 51 55 44 | 20 30 3a 45 51 55 53 20 |ror:EQUD| 0:EQUS |
|00002420| 22 43 61 6e 27 74 20 73 | 65 74 20 73 65 72 69 61 |"Can't s|et seria|
|00002430| 6c 20 70 6f 72 74 20 74 | 6f 20 61 20 62 61 75 64 |l port t|o a baud|
|00002440| 20 72 61 74 65 20 6f 66 | 20 20 20 20 20 20 20 22 | rate of| "|
|00002450| 3a 45 51 55 42 30 3a 41 | 4c 49 47 4e 0d 0b 18 04 |:EQUB0:A|LIGN....|
|00002460| 0d 0b 22 3c 2e 64 65 73 | 63 62 61 75 64 3b 20 42 |.."<.des|cbaud; B|
|00002470| 61 75 64 72 61 74 65 20 | 6e 75 6d 62 65 72 20 69 |audrate |number i|
|00002480| 6e 20 52 31 20 70 6f 69 | 6e 74 65 72 20 74 6f 20 |n R1 poi|nter to |
|00002490| 73 74 72 69 6e 67 20 69 | 6e 20 52 32 0d 0b 2c 21 |string i|n R2..,!|
|000024a0| 43 4d 50 20 52 31 2c 23 | 26 31 30 3a 42 47 45 20 |CMP R1,#|&10:BGE |
|000024b0| 64 65 73 63 62 61 75 64 | 65 72 72 6f 72 0d 0b 36 |descbaud|error..6|
|000024c0| 32 4d 4f 56 20 52 31 2c | 52 31 2c 4c 53 4c 23 32 |2MOV R1,|R1,LSL#2|
|000024d0| 3a 41 44 52 20 52 33 2c | 73 65 72 74 61 62 6c 65 |:ADR R3,|sertable|
|000024e0| 3a 4c 44 52 20 52 30 2c | 5b 52 33 2c 52 31 5d 0d |:LDR R0,|[R3,R1].|
|000024f0| 0b 40 4a 4d 4f 56 20 52 | 31 2c 52 32 3a 4d 4f 56 |.@JMOV R|1,R2:MOV|
|00002500| 20 52 32 2c 23 36 3a 53 | 57 49 22 4f 53 5f 42 69 | R2,#6:S|WI"OS_Bi|
|00002510| 6e 61 72 79 54 6f 44 65 | 63 69 6d 61 6c 22 3a 4d |naryToDe|cimal":M|
|00002520| 4f 56 20 52 30 2c 23 26 | 30 3a 53 54 52 42 20 52 |OV R0,#&|0:STRB R|
|00002530| 30 2c 5b 52 31 2c 52 32 | 5d 0d 0b 4a 0f 4d 4f 56 |0,[R1,R2|]..J.MOV|
|00002540| 20 52 31 35 2c 52 31 34 | 0d 0b 54 25 2e 64 65 73 | R15,R14|..T%.des|
|00002550| 63 62 61 75 64 65 72 72 | 6f 72 3a 41 44 52 20 52 |cbauderr|or:ADR R|
|00002560| 30 2c 64 65 73 63 62 61 | 75 64 65 72 72 0d 0b 5e |0,descba|uderr..^|
|00002570| 3e 53 54 4d 46 41 20 31 | 32 21 2c 7b 52 31 34 7d |>STMFA 1|2!,{R14}|
|00002580| 3a 42 4c 20 72 65 70 6f | 72 74 65 72 72 6f 72 3a |:BL repo|rterror:|
|00002590| 4c 44 4d 46 41 20 31 32 | 21 2c 7b 52 31 34 7d 3a |LDMFA 12|!,{R14}:|
|000025a0| 4d 4f 56 20 52 31 35 2c | 52 31 34 0d 0b 68 4b 2e |MOV R15,|R14..hK.|
|000025b0| 64 65 73 63 62 61 75 64 | 65 72 72 3a 45 51 55 44 |descbaud|err:EQUD|
|000025c0| 30 3a 45 51 55 53 22 49 | 6e 74 65 72 6e 61 6c 20 |0:EQUS"I|nternal |
|000025d0| 45 72 72 6f 72 20 2d 20 | 4e 6f 20 73 75 63 68 20 |Error - |No such |
|000025e0| 62 61 75 64 20 72 61 74 | 65 22 3a 45 51 55 42 30 |baud rat|e":EQUB0|
|000025f0| 3a 41 4c 49 47 4e 0d 0b | 72 04 0d 0b 7c 2a 2e 72 |:ALIGN..|r...|*.r|
|00002600| 65 70 6f 72 74 65 72 72 | 6f 72 20 3b 20 50 6f 69 |eporterr|or ; Poi|
|00002610| 6e 74 65 72 20 74 6f 20 | 73 74 72 69 6e 67 20 69 |nter to |string i|
|00002620| 6e 20 52 30 0d 0b 86 16 | 53 54 4d 46 41 20 52 31 |n R0....|STMFA R1|
|00002630| 32 21 2c 7b 52 31 2c 52 | 32 7d 0d 0b 90 33 4d 4f |2!,{R1,R|2}...3MO|
|00002640| 56 20 52 31 2c 23 33 3a | 41 44 52 20 52 32 2c 74 |V R1,#3:|ADR R2,t|
|00002650| 61 73 6b 6e 61 6d 65 3a | 53 57 49 22 57 69 6d 70 |askname:|SWI"Wimp|
|00002660| 5f 52 65 70 6f 72 74 45 | 72 72 6f 72 22 0d 0b 9a |_ReportE|rror"...|
|00002670| 1b 54 45 51 20 52 31 2c | 23 32 3a 42 45 51 20 63 |.TEQ R1,|#2:BEQ c|
|00002680| 72 61 73 68 65 78 69 74 | 0d 0b a4 22 4c 44 4d 46 |rashexit|..."LDMF|
|00002690| 41 20 52 31 32 21 2c 7b | 52 31 2c 52 32 7d 3a 4d |A R12!,{|R1,R2}:M|
|000026a0| 4f 56 20 52 31 35 2c 52 | 31 34 0d 0b ae 37 2e 74 |OV R15,R|14...7.t|
|000026b0| 61 73 6b 6e 61 6d 65 3a | 45 51 55 53 22 52 69 73 |askname:|EQUS"Ris|
|000026c0| 63 79 20 54 4e 43 20 4d | 61 63 68 69 6e 65 20 43 |cy TNC M|achine C|
|000026d0| 6f 64 65 22 3a 45 51 55 | 42 20 30 3a 41 4c 49 47 |ode":EQU|B 0:ALIG|
|000026e0| 4e 0d 0b b8 04 0d 0b c2 | 0e 2e 63 72 61 73 68 65 |N.......|..crashe|
|000026f0| 78 69 74 0d 0b cc 36 4d | 4f 56 20 52 30 2c 30 3a |xit...6M|OV R0,0:|
|00002700| 4d 4f 56 20 52 31 2c 30 | 3a 53 57 49 22 57 69 6d |MOV R1,0|:SWI"Wim|
|00002710| 70 5f 43 6c 6f 73 65 44 | 6f 77 6e 22 3a 53 57 49 |p_CloseD|own":SWI|
|00002720| 22 4f 53 5f 45 78 69 74 | 22 0d 0b d6 1a 3b 20 53 |"OS_Exit|"....; S|
|00002730| 65 72 69 61 6c 20 50 6f | 72 74 20 72 6f 75 74 69 |erial Po|rt routi|
|00002740| 6e 65 73 0d 0b e0 04 0d | 0b ea 20 2e 73 65 6e 64 |nes.....|.. .send|
|00002750| 62 72 65 61 6b 3b 20 53 | 65 6e 64 20 62 72 65 61 |break; S|end brea|
|00002760| 6b 20 6c 65 76 65 6c 0d | 0b f4 19 4d 4f 56 20 52 |k level.|...MOV R|
|00002770| 30 2c 23 32 3a 4d 4f 56 | 20 52 31 2c 23 26 32 30 |0,#2:MOV| R1,#&20|
|00002780| 0d 0b fe 30 53 54 4d 46 | 41 20 31 32 21 2c 7b 52 |...0STMF|A 12!,{R|
|00002790| 31 34 7d 3a 42 4c 20 73 | 65 72 62 72 65 61 6b 3a |14}:BL s|erbreak:|
|000027a0| 4c 44 4d 46 41 20 52 31 | 32 21 2c 7b 52 31 34 7d |LDMFA R1|2!,{R14}|
|000027b0| 0d 0c 08 10 42 20 6d 61 | 73 74 65 72 65 78 69 74 |....B ma|sterexit|
|000027c0| 0d 0c 12 04 0d 0c 1c 26 | 2e 72 6d 6f 64 63 6f 20 |.......&|.rmodco |
|000027d0| 3b 20 52 65 61 64 20 6d | 6f 64 65 6d 20 63 6f 6e |; Read m|odem con|
|000027e0| 74 72 6f 6c 20 6c 69 6e | 65 73 0d 0c 26 1a 42 49 |trol lin|es..&.BI|
|000027f0| 43 20 52 30 2c 52 30 2c | 52 30 3a 4d 4f 56 20 52 |C R0,R0,|R0:MOV R|
|00002800| 30 2c 23 38 0d 0c 30 14 | 53 54 4d 46 41 20 52 31 |0,#8..0.|STMFA R1|
|00002810| 32 21 2c 7b 52 31 34 7d | 0d 0c 3a 13 53 54 4d 46 |2!,{R14}|..:.STMF|
|00002820| 41 20 52 31 32 21 2c 7b | 52 31 7d 0d 0c 44 11 42 |A R12!,{|R1}..D.B|
|00002830| 4c 20 64 72 69 76 65 72 | 63 61 6c 6c 0d 0c 4e 13 |L driver|call..N.|
|00002840| 4c 44 4d 46 41 20 52 31 | 32 21 2c 7b 52 31 7d 0d |LDMFA R1|2!,{R1}.|
|00002850| 0c 58 20 53 54 4d 46 41 | 20 52 31 32 21 2c 7b 52 |.X STMFA| R12!,{R|
|00002860| 30 7d 3a 42 49 43 20 52 | 32 2c 52 32 2c 52 32 0d |0}:BIC R|2,R2,R2.|
|00002870| 0c 62 3b 4d 4f 56 20 52 | 30 2c 23 39 3a 53 54 4d |.b;MOV R|0,#9:STM|
|00002880| 46 41 20 52 31 32 21 2c | 7b 52 31 7d 3a 42 4c 20 |FA R12!,|{R1}:BL |
|00002890| 64 72 69 76 65 72 63 61 | 6c 6c 3a 4c 44 4d 46 41 |driverca|ll:LDMFA|
|000028a0| 20 52 31 32 21 2c 7b 52 | 31 7d 0d 0c 6c 0f 80 20 | R12!,{R|1}..l.. |
|000028b0| 52 30 2c 52 30 2c 23 26 | 46 0d 0c 76 23 4c 44 4d |R0,R0,#&|F..v#LDM|
|000028c0| 46 41 20 52 31 32 21 2c | 7b 52 32 7d 3a 4d 4f 56 |FA R12!,|{R2}:MOV|
|000028d0| 20 52 30 2c 52 30 2c 4c | 53 4c 23 32 0d 0c 80 2c | R0,R0,L|SL#2...,|
|000028e0| 84 52 20 52 30 2c 52 30 | 2c 52 32 3a 42 49 43 20 |.R R0,R0|,R2:BIC |
|000028f0| 52 32 2c 52 32 2c 52 32 | 3a 53 54 4d 46 41 20 52 |R2,R2,R2|:STMFA R|
|00002900| 31 32 21 2c 7b 52 30 7d | 0d 0c 8a 1c 4d 4f 56 20 |12!,{R0}|....MOV |
|00002910| 52 30 2c 23 31 30 3a 42 | 4c 20 64 72 69 76 65 72 |R0,#10:B|L driver|
|00002920| 63 61 6c 6c 0d 0c 94 23 | 4c 44 4d 46 41 20 52 31 |call...#|LDMFA R1|
|00002930| 32 21 2c 7b 52 32 7d 3a | 4d 4f 56 20 52 30 2c 52 |2!,{R2}:|MOV R0,R|
|00002940| 30 2c 4c 53 4c 23 36 0d | 0c 9e 10 41 44 44 20 52 |0,LSL#6.|...ADD R|
|00002950| 30 2c 52 30 2c 52 32 0d | 0c a8 12 53 54 52 20 52 |0,R0,R2.|...STR R|
|00002960| 30 2c 62 61 73 66 6c 61 | 67 0d 0c b2 14 4c 44 4d |0,basfla|g....LDM|
|00002970| 46 41 20 52 31 32 21 2c | 7b 52 31 34 7d 0d 0c bc |FA R12!,|{R14}...|
|00002980| 10 42 20 6d 61 73 74 65 | 72 65 78 69 74 0d 0c c6 |.B maste|rexit...|
|00002990| 05 3b 0d 0c d0 12 3b 43 | 6c 6f 63 6b 20 53 65 74 |.;....;C|lock Set|
|000029a0| 74 69 6e 67 0d 0c da 12 | 3b 3d 3d 3d 3d 3d 3d 3d |ting....|;=======|
|000029b0| 3d 3d 3d 3d 3d 3d 0d 0c | e4 05 3b 0d 0c ee 41 2e |======..|..;...A.|
|000029c0| 63 6c 6f 63 6b 6c 6f 61 | 64 3b 20 53 65 6e 64 20 |clockloa|d; Send |
|000029d0| 41 72 63 20 63 6c 6f 63 | 6b 20 69 6e 66 6f 20 74 |Arc cloc|k info t|
|000029e0| 6f 20 54 4e 43 3b 20 34 | 20 2f 20 36 20 70 61 72 |o TNC; 4| / 6 par|
|000029f0| 61 6d 65 74 65 72 20 69 | 6e 20 52 31 0d 0c f8 3e |ameter i|n R1...>|
|00002a00| 4d 4f 56 20 52 36 2c 52 | 31 3a 4d 4f 56 20 52 30 |MOV R6,R|1:MOV R0|
|00002a10| 2c 23 34 3a 42 4c 20 64 | 72 69 76 65 72 63 61 6c |,#4:BL d|rivercal|
|00002a20| 6c 3a 43 4d 50 20 52 30 | 2c 23 33 30 3a 42 4c 45 |l:CMP R0|,#30:BLE|
|00002a30| 20 63 61 6e 74 63 6c 6f | 63 6b 0d 0d 02 14 53 54 | cantclo|ck....ST|
|00002a40| 4d 46 41 20 52 31 32 21 | 2c 7b 52 31 34 7d 0d 0d |MFA R12!|,{R14}..|
|00002a50| 0c 43 41 44 52 20 52 32 | 2c 64 61 79 73 74 72 69 |.CADR R2|,daystri|
|00002a60| 6e 67 20 3a 42 49 43 20 | 52 33 2c 52 33 2c 52 33 |ng :BIC |R3,R3,R3|
|00002a70| 3a 4d 4f 56 20 52 33 2c | 23 39 3a 42 49 43 20 52 |:MOV R3,|#9:BIC R|
|00002a80| 30 2c 52 30 2c 52 30 3a | 4d 4f 56 20 52 30 2c 23 |0,R0,R0:|MOV R0,#|
|00002a90| 32 0d 0d 16 11 42 4c 20 | 64 72 69 76 65 72 63 61 |2....BL |driverca|
|00002aa0| 6c 6c 0d 0d 20 0f 42 20 | 63 6f 6e 74 63 6c 6f 63 |ll.. .B |contcloc|
|00002ab0| 6b 0d 0d 2a 25 2e 64 61 | 79 73 74 72 69 6e 67 3a |k..*%.da|ystring:|
|00002ac0| 45 51 55 42 20 33 3a 45 | 51 55 53 22 44 41 59 54 |EQUB 3:E|QUS"DAYT|
|00002ad0| 49 4d 45 20 22 3a 0d 0d | 34 0e 2e 63 6f 6e 74 63 |IME ":..|4..contc|
|00002ae0| 6c 6f 63 6b 0d 0d 3e 2b | 4d 4f 56 20 52 30 2c 23 |lock..>+|MOV R0,#|
|00002af0| 31 3a 41 44 52 20 52 34 | 2c 63 6c 6f 63 6b 70 61 |1:ADR R4|,clockpa|
|00002b00| 72 6d 3a 42 49 43 20 52 | 35 2c 52 35 2c 52 35 0d |rm:BIC R|5,R5,R5.|
|00002b10| 0d 48 3f 53 54 52 42 20 | 52 30 2c 5b 52 34 5d 3a |.H?STRB |R0,[R4]:|
|00002b20| 4d 4f 56 20 52 30 2c 23 | 31 34 3a 4d 4f 56 20 52 |MOV R0,#|14:MOV R|
|00002b30| 31 2c 52 34 3a 53 57 49 | 20 37 3a 4d 4f 56 20 52 |1,R4:SWI| 7:MOV R|
|00002b40| 30 2c 23 33 3a 4d 4f 56 | 20 52 35 2c 23 36 0d 0d |0,#3:MOV| R5,#6..|
|00002b50| 52 1f 3b 4c 44 52 42 20 | 52 36 2c 74 6e 63 6e 75 |R.;LDRB |R6,tncnu|
|00002b60| 6d 62 3a 3b 4d 4f 56 20 | 52 35 2c 23 36 0d 0d 5c |mb:;MOV |R5,#6..\|
|00002b70| 35 54 45 51 20 52 36 2c | 23 30 3a ec 51 20 52 35 |5TEQ R6,|#0:.Q R5|
|00002b80| 2c 23 26 35 3b 20 4e 75 | 6d 62 65 72 20 6f 66 20 |,#&5; Nu|mber of |
|00002b90| 70 61 72 61 6d 65 74 65 | 72 73 20 74 6f 20 73 65 |paramete|rs to se|
|00002ba0| 6e 64 0d 0d 66 2f 54 45 | 51 20 52 36 2c 23 31 3a |nd..f/TE|Q R6,#1:|
|00002bb0| ec 51 20 52 35 2c 23 26 | 35 3b 20 35 20 70 61 72 |.Q R5,#&|5; 5 par|
|00002bc0| 61 6d 65 74 65 72 73 20 | 64 61 74 65 20 68 68 6d |ameters |date hhm|
|00002bd0| 6d 0d 0d 70 31 54 45 51 | 20 52 36 2c 23 32 3a ec |m..p1TEQ| R6,#2:.|
|00002be0| 51 20 52 35 2c 23 26 36 | 3b 20 36 20 70 61 72 61 |Q R5,#&6|; 6 para|
|00002bf0| 6d 65 74 65 72 73 20 64 | 61 74 65 20 68 68 6d 6d |meters d|ate hhmm|
|00002c00| 73 73 0d 0d 7a 17 54 45 | 51 20 52 36 2c 23 33 3a |ss..z.TE|Q R6,#3:|
|00002c10| ec 51 20 52 35 2c 23 26 | 35 0d 0d 84 17 54 45 51 |.Q R5,#&|5....TEQ|
|00002c20| 20 52 36 2c 23 34 3a ec | 51 20 52 35 2c 23 26 35 | R6,#4:.|Q R5,#&5|
|00002c30| 0d 0d 8e 17 54 45 51 20 | 52 36 2c 23 36 3a ec 51 |....TEQ |R6,#6:.Q|
|00002c40| 20 52 35 2c 23 26 36 0d | 0d 98 18 4d 4f 56 20 52 | R5,#&6.|...MOV R|
|00002c50| 36 2c 52 35 3a 4d 4f 56 | 20 52 35 2c 23 26 30 0d |6,R5:MOV| R5,#&0.|
|00002c60| 0d a2 0d 2e 74 6f 70 63 | 6c 6f 63 6b 0d 0d ac 1c |....topc|lock....|
|00002c70| 54 45 51 20 52 35 2c 23 | 33 3a 41 44 44 45 51 20 |TEQ R5,#|3:ADDEQ |
|00002c80| 52 35 2c 52 35 2c 23 31 | 0d 0d b6 46 4c 44 52 42 |R5,R5,#1|...FLDRB|
|00002c90| 20 52 33 2c 5b 52 34 2c | 52 35 5d 3a 80 20 52 32 | R3,[R4,|R5]:. R2|
|00002ca0| 2c 52 33 2c 23 25 31 31 | 31 31 30 30 30 30 3a 4d |,R3,#%11|110000:M|
|00002cb0| 4f 56 20 52 32 2c 52 32 | 2c 41 53 52 20 23 34 3a |OV R2,R2|,ASR #4:|
|00002cc0| 41 44 44 20 52 32 2c 52 | 32 2c 23 26 33 30 0d 0d |ADD R2,R|2,#&30..|
|00002cd0| c0 1e 42 49 43 20 52 30 | 2c 52 30 2c 52 30 3a 42 |..BIC R0|,R0,R0:B|
|00002ce0| 4c 20 64 72 69 76 65 72 | 63 61 6c 6c 0d 0d ca 25 |L driver|call...%|
|00002cf0| 80 20 52 32 2c 52 33 2c | 23 25 30 30 30 30 31 31 |. R2,R3,|#%000011|
|00002d00| 31 31 3a 41 44 44 20 52 | 32 2c 52 32 2c 23 26 33 |11:ADD R|2,R2,#&3|
|00002d10| 30 0d 0d d4 1e 42 49 43 | 20 52 30 2c 52 30 2c 52 |0....BIC| R0,R0,R|
|00002d20| 30 3a 42 4c 20 64 72 69 | 76 65 72 63 61 6c 6c 0d |0:BL dri|vercall.|
|00002d30| 0d de 1a 54 45 51 20 52 | 35 2c 52 36 3a 42 45 51 |...TEQ R|5,R6:BEQ|
|00002d40| 20 6f 75 74 63 6c 6f 63 | 6b 0d 0d e8 1b 41 44 44 | outcloc|k....ADD|
|00002d50| 20 52 35 2c 52 35 2c 23 | 31 3a 42 20 74 6f 70 63 | R5,R5,#|1:B topc|
|00002d60| 6c 6f 63 6b 0d 0d f2 0d | 2e 6f 75 74 63 6c 6f 63 |lock....|.outcloc|
|00002d70| 6b 0d 0d fc 29 4d 4f 56 | 20 52 32 2c 23 31 33 3a |k...)MOV| R2,#13:|
|00002d80| 42 49 43 20 52 30 2c 52 | 30 2c 52 30 3a 42 4c 20 |BIC R0,R|0,R0:BL |
|00002d90| 64 72 69 76 65 72 63 61 | 6c 6c 0d 0e 06 14 4c 44 |driverca|ll....LD|
|00002da0| 4d 46 41 20 52 31 32 21 | 2c 7b 52 31 34 7d 0d 0e |MFA R12!|,{R14}..|
|00002db0| 10 10 42 20 6d 61 73 74 | 65 72 65 78 69 74 0d 0e |..B mast|erexit..|
|00002dc0| 1a 0e 2e 63 61 6e 74 63 | 6c 6f 63 6b 0d 0e 24 47 |...cantc|lock..$G|
|00002dd0| 41 44 52 20 52 30 2c 63 | 61 6e 74 63 6c 6f 63 6b |ADR R0,c|antclock|
|00002de0| 65 72 72 3a 53 54 4d 46 | 41 20 31 32 21 2c 7b 52 |err:STMF|A 12!,{R|
|00002df0| 31 34 7d 3a 42 4c 20 72 | 65 70 6f 72 74 65 72 72 |14}:BL r|eporterr|
|00002e00| 6f 72 3a 4c 44 4d 46 41 | 20 52 31 32 21 2c 7b 52 |or:LDMFA| R12!,{R|
|00002e10| 31 34 7d 0d 0e 2e 10 42 | 20 6d 61 73 74 65 72 65 |14}....B| mastere|
|00002e20| 78 69 74 0d 0e 38 72 2e | 63 61 6e 74 63 6c 6f 63 |xit..8r.|cantcloc|
|00002e30| 6b 65 72 72 3a 45 51 55 | 44 20 30 3a 45 51 55 53 |kerr:EQU|D 0:EQUS|
|00002e40| 20 22 53 65 72 69 61 6c | 20 70 6f 72 74 20 6f 75 | "Serial| port ou|
|00002e50| 74 70 75 74 20 62 75 66 | 66 65 72 20 69 73 20 63 |tput buf|fer is c|
|00002e60| 6f 6e 73 74 69 70 61 74 | 65 64 20 2d 20 54 4e 43 |onstipat|ed - TNC|
|00002e70| 20 63 6c 6f 63 6b 20 63 | 61 6e 6e 6f 74 20 62 65 | clock c|annot be|
|00002e80| 20 75 70 64 61 74 65 64 | 22 3a 45 51 55 42 30 3a | updated|":EQUB0:|
|00002e90| 41 4c 49 47 4e 0d 0e 42 | 0e 2e 63 6c 6f 63 6b 70 |ALIGN..B|..clockp|
|00002ea0| 61 72 6d 0d 0e 4c 11 45 | 51 55 44 20 30 3a 45 51 |arm..L.E|QUD 0:EQ|
|00002eb0| 55 44 20 30 0d 0e 56 04 | 0d 0e 60 04 0d 0e 6a 0a |UD 0..V.|..`...j.|
|00002ec0| 2e 66 6c 6f 61 64 0d 0e | 74 04 0d 0e 7e 23 3b 53 |.fload..|t...~#;S|
|00002ed0| 65 72 69 61 6c 20 50 6f | 72 74 20 4d 61 69 6e 20 |erial Po|rt Main |
|00002ee0| 69 6e 70 75 74 20 52 6f | 75 74 69 6e 65 0d 0e 88 |input Ro|utine...|
|00002ef0| 23 3b 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |#;======|========|
|00002f00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========|
|00002f10| 0d 0e 92 05 3b 0d 0e 9c | 0b 2e 63 68 61 72 64 69 |....;...|..chardi|
|00002f20| 0d 0e a6 49 4c 44 52 20 | 52 30 2c 69 70 69 6e 3a |...ILDR |R0,ipin:|
|00002f30| 4c 44 52 20 52 31 2c 69 | 70 6f 75 74 3b 20 20 20 |LDR R1,i|pout; |
|00002f40| 20 20 20 20 20 20 20 20 | 20 20 20 20 44 6f 65 73 | | Does|
|00002f50| 20 74 68 65 20 62 69 67 | 20 62 75 66 66 65 72 20 | the big| buffer |
|00002f60| 6e 65 65 64 20 61 74 74 | 6e 0d 0e b0 3f 54 45 51 |need att|n...?TEQ|
|00002f70| 20 52 30 2c 52 31 3a 42 | 4c 4e 45 20 6e 65 77 73 | R0,R1:B|LNE news|
|00002f80| 65 72 69 6e 70 3b 20 20 | 20 20 20 20 20 20 20 20 |erinp; | |
|00002f90| 20 20 20 20 20 49 66 20 | 79 65 73 20 61 74 74 65 | If |yes atte|
|00002fa0| 6e 64 20 74 6f 20 69 74 | 0d 0e ba 10 42 20 6d 61 |nd to it|....B ma|
|00002fb0| 73 74 65 72 65 78 69 74 | 0d 0e c4 04 0d 0e ce 0e |sterexit|........|
|00002fc0| 2e 6e 65 77 73 65 72 69 | 6e 70 0d 0e d8 28 53 54 |.newseri|np...(ST|
|00002fd0| 4d 46 41 20 52 31 32 21 | 2c 7b 52 39 2d 52 31 31 |MFA R12!|,{R9-R11|
|00002fe0| 2c 52 31 34 7d 3a 42 49 | 43 20 52 31 2c 52 31 2c |,R14}:BI|C R1,R1,|
|00002ff0| 52 31 0d 0e e2 49 4c 44 | 52 42 20 52 31 2c 69 70 |R1...ILD|RB R1,ip|
|00003000| 75 73 65 72 3b 20 20 20 | 20 20 20 20 20 20 20 20 |user; | |
|00003010| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 49 73 | | Is|
|00003020| 20 74 68 65 20 63 75 72 | 72 65 6e 74 20 75 73 65 | the cur|rent use|
|00003030| 72 20 73 65 6e 73 69 62 | 6c 65 3f 0d 0e ec 42 54 |r sensib|le?...BT|
|00003040| 45 51 20 52 31 2c 23 26 | 30 30 3a 42 45 51 20 73 |EQ R1,#&|00:BEQ s|
|00003050| 65 72 69 6e 70 6e 6f 72 | 65 70 3b 20 20 20 20 20 |erinpnor|ep; |
|00003060| 20 20 20 20 20 20 20 5a | 65 72 6f 20 6d 65 61 6e | Z|ero mean|
|00003070| 73 20 64 6f 6e 27 74 20 | 74 6f 75 63 68 0d 0e f6 |s don't |touch...|
|00003080| 4d 43 4d 50 20 52 31 2c | 23 26 31 30 3a 42 47 45 |MCMP R1,|#&10:BGE|
|00003090| 20 73 65 72 69 6e 70 6e | 6f 72 65 70 3b 20 20 20 | serinpn|orep; |
|000030a0| 20 20 20 20 20 20 20 20 | 20 54 68 65 72 65 20 61 | | There a|
|000030b0| 72 65 6e 27 74 20 61 6e | 79 20 73 74 72 65 61 6d |ren't an|y stream|
|000030c0| 73 20 6f 76 65 72 20 26 | 31 30 0d 0f 00 3f 4c 44 |s over &|10...?LD|
|000030d0| 52 20 52 35 2c 66 6c 61 | 67 62 61 73 65 3a 4d 4f |R R5,fla|gbase:MO|
|000030e0| 56 20 52 31 2c 52 31 2c | 4c 53 4c 23 35 3b 20 20 |V R1,R1,|LSL#5; |
|000030f0| 20 20 20 20 20 20 47 65 | 74 20 74 68 65 20 73 74 | Ge|t the st|
|00003100| 72 65 61 6d 20 66 6c 61 | 67 0d 0f 0a 1c 4c 44 52 |ream fla|g....LDR|
|00003110| 20 52 30 2c 5b 52 35 2c | 52 31 5d 3a 54 53 54 20 | R0,[R5,|R1]:TST |
|00003120| 52 30 2c 23 31 0d 0f 14 | 43 42 4e 45 74 6f 70 73 |R0,#1...|CBNEtops|
|00003130| 65 72 69 6e 70 3b 20 20 | 20 20 20 20 20 20 20 20 |erinp; | |
|00003140| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003150| 20 49 66 20 69 74 27 73 | 20 61 63 74 69 76 65 2c | If it's| active,|
|00003160| 20 6c 65 74 73 20 67 6f | 0d 0f 1e 48 42 49 43 20 | lets go|...HBIC |
|00003170| 52 31 2c 52 31 2c 52 31 | 3a 4d 4f 56 20 52 31 2c |R1,R1,R1|:MOV R1,|
|00003180| 23 30 37 3b 20 20 20 20 | 20 20 20 20 20 20 20 20 |#07; | |
|00003190| 20 20 20 20 62 75 74 20 | 69 66 20 6e 6f 74 2c 20 | but |if not, |
|000031a0| 74 72 79 20 74 68 65 20 | 74 65 72 6d 69 6e 61 6c |try the |terminal|
|000031b0| 0d 0f 28 22 4d 4f 56 20 | 52 31 2c 52 31 2c 4c 53 |..("MOV |R1,R1,LS|
|000031c0| 4c 23 35 3a 4c 44 52 20 | 52 30 2c 5b 52 35 2c 52 |L#5:LDR |R0,[R5,R|
|000031d0| 31 5d 0d 0f 32 1d 54 53 | 54 20 52 30 2c 23 31 3a |1]..2.TS|T R0,#1:|
|000031e0| 42 45 51 20 73 65 72 69 | 6e 70 6e 6f 72 65 70 0d |BEQ seri|npnorep.|
|000031f0| 0f 3c 4a 4d 4f 56 20 52 | 31 2c 52 31 2c 4c 53 52 |.<JMOV R|1,R1,LSR|
|00003200| 23 35 3a 53 54 52 20 52 | 31 2c 69 70 75 73 65 72 |#5:STR R|1,ipuser|
|00003210| 3b 20 20 20 20 20 20 20 | 20 20 20 61 6e 64 20 6d |; | and m|
|00003220| 61 6b 65 20 69 74 20 74 | 68 65 20 63 75 72 72 65 |ake it t|he curre|
|00003230| 6e 74 20 73 74 72 65 61 | 6d 0d 0f 46 04 0d 0f 50 |nt strea|m..F...P|
|00003240| 0e 2e 74 6f 70 73 65 72 | 69 6e 70 0d 0f 5a 49 42 |..topser|inp..ZIB|
|00003250| 4c 20 72 74 6f 62 75 66 | 30 3b 20 20 20 20 20 20 |L rtobuf|0; |
|00003260| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003270| 20 20 20 20 20 20 20 47 | 65 74 20 62 79 74 65 73 | G|et bytes|
|00003280| 20 66 72 6f 6d 20 73 65 | 72 69 61 6c 20 69 6e 74 | from se|rial int|
|00003290| 6f 20 42 30 0d 0f 64 4c | 4c 44 52 20 52 30 2c 69 |o B0..dL|LDR R0,i|
|000032a0| 70 73 77 66 6c 3a 54 53 | 54 20 52 30 2c 23 31 3b |pswfl:TS|T R0,#1;|
|000032b0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000032c0| 41 72 65 20 77 65 20 6c | 6f 63 6b 65 64 20 61 67 |Are we l|ocked ag|
|000032d0| 61 69 6e 73 74 20 73 74 | 72 20 63 68 61 6e 67 65 |ainst st|r change|
|000032e0| 0d 0f 6e 16 42 4c 4e 45 | 20 73 74 72 65 61 6d 63 |..n.BLNE| streamc|
|000032f0| 68 65 63 6b 65 72 0d 0f | 78 3b 42 4c 20 73 65 72 |hecker..|x;BL ser|
|00003300| 69 6e 70 31 3b 20 20 20 | 20 20 20 20 20 20 20 20 |inp1; | |
|00003310| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003320| 20 20 44 69 73 74 72 69 | 62 75 74 65 20 74 68 65 | Distri|bute the|
|00003330| 6d 0d 0f 82 39 42 49 43 | 20 52 33 2c 52 33 2c 52 |m...9BIC| R3,R3,R|
|00003340| 33 3a 53 54 52 42 20 52 | 33 2c 62 75 66 70 6f 73 |3:STRB R|3,bufpos|
|00003350| 6e 3b 20 20 20 20 20 20 | 20 20 20 20 20 43 6c 65 |n; | Cle|
|00003360| 61 72 20 42 30 20 74 6f | 20 30 0d 0f 8c 10 2e 73 |ar B0 to| 0.....s|
|00003370| 65 72 69 6e 70 6e 6f 72 | 65 70 0d 0f 96 1b 4c 44 |erinpnor|ep....LD|
|00003380| 4d 46 41 20 52 31 32 21 | 2c 7b 52 39 2d 52 31 31 |MFA R12!|,{R9-R11|
|00003390| 2c 52 31 34 7d 0d 0f a0 | 0f 4d 4f 56 20 52 31 35 |,R14}...|.MOV R15|
|000033a0| 2c 52 31 34 0d 0f aa 04 | 0d 0f b4 0c 2e 72 74 6f |,R14....|.....rto|
|000033b0| 62 75 66 30 0d 0f be 21 | 53 54 4d 46 41 20 52 31 |buf0...!|STMFA R1|
|000033c0| 32 21 2c 7b 52 31 34 7d | 3a 42 49 43 20 52 30 2c |2!,{R14}|:BIC R0,|
|000033d0| 52 30 2c 52 30 0d 0f c8 | 22 4c 44 52 20 52 31 2c |R0,R0...|"LDR R1,|
|000033e0| 62 75 66 66 65 72 62 61 | 73 65 3a 42 49 43 20 52 |bufferba|se:BIC R|
|000033f0| 32 2c 52 32 2c 52 32 0d | 0f d2 20 4c 44 52 20 52 |2,R2,R2.|.. LDR R|
|00003400| 33 2c 69 70 62 75 66 66 | 65 72 3a 4c 44 52 20 52 |3,ipbuff|er:LDR R|
|00003410| 34 2c 69 70 6f 75 74 0d | 0f dc 0f 4c 44 52 20 52 |4,ipout.|...LDR R|
|00003420| 35 2c 69 70 69 6e 0d 0f | e6 0e 2e 74 6f 70 72 74 |5,ipin..|...toprt|
|00003430| 6f 62 75 66 0d 0f f0 36 | 4c 44 52 42 20 52 30 2c |obuf...6|LDRB R0,|
|00003440| 5b 52 33 2c 52 34 5d 3b | 20 20 20 20 20 20 20 20 |[R3,R4];| |
|00003450| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003460| 47 65 74 20 61 20 63 68 | 61 72 0d 0f fa 13 53 54 |Get a ch|ar....ST|
|00003470| 52 42 20 52 30 2c 5b 52 | 31 2c 52 32 5d 0d 10 04 |RB R0,[R|1,R2]...|
|00003480| 10 41 44 44 20 52 32 2c | 52 32 2c 23 31 0d 10 0e |.ADD R2,|R2,#1...|
|00003490| 21 41 44 44 20 52 34 2c | 52 34 2c 23 31 3a 42 49 |!ADD R4,|R4,#1:BI|
|000034a0| 43 20 52 34 2c 52 34 2c | 23 26 31 30 30 30 0d 10 |C R4,R4,|#&1000..|
|000034b0| 18 3f 54 45 51 20 52 30 | 2c 23 26 30 44 3a 42 45 |.?TEQ R0|,#&0D:BE|
|000034c0| 51 20 66 69 6e 72 62 75 | 66 30 3b 20 20 20 20 20 |Q finrbu|f0; |
|000034d0| 20 20 20 20 20 20 20 20 | 20 20 53 74 6f 70 20 69 | | Stop i|
|000034e0| 66 20 77 65 20 67 65 74 | 20 61 20 43 52 0d 10 22 |f we get| a CR.."|
|000034f0| 43 54 45 51 20 52 34 2c | 52 35 3a 42 45 51 20 66 |CTEQ R4,|R5:BEQ f|
|00003500| 69 6e 72 62 75 66 30 3b | 20 20 20 20 20 20 20 20 |inrbuf0;| |
|00003510| 20 20 20 20 20 20 20 20 | 20 53 74 6f 70 20 69 66 | | Stop if|
|00003520| 20 77 65 20 65 6d 70 74 | 79 20 62 75 66 66 65 72 | we empt|y buffer|
|00003530| 0d 10 2c 47 43 4d 50 20 | 52 32 2c 23 38 30 3a 42 |..,GCMP |R2,#80:B|
|00003540| 4c 54 20 74 6f 70 72 74 | 6f 62 75 66 3b 20 20 20 |LT toprt|obuf; |
|00003550| 20 20 20 20 20 20 20 20 | 20 20 20 20 53 74 6f 70 | | Stop|
|00003560| 20 69 66 20 77 65 20 61 | 72 65 20 67 6f 69 6e 67 | if we a|re going|
|00003570| 20 74 6f 20 66 61 72 0d | 10 36 0d 2e 66 69 6e 72 | to far.|.6..finr|
|00003580| 62 75 66 30 0d 10 40 13 | 53 54 52 42 20 52 32 2c |buf0..@.|STRB R2,|
|00003590| 62 75 66 70 6f 73 6e 0d | 10 4a 10 53 54 52 20 52 |bufposn.|.J.STR R|
|000035a0| 34 2c 69 70 6f 75 74 0d | 10 54 1f 4c 44 4d 46 41 |4,ipout.|.T.LDMFA|
|000035b0| 20 31 32 21 2c 7b 52 31 | 34 7d 3a 4d 4f 56 20 52 | 12!,{R1|4}:MOV R|
|000035c0| 31 35 2c 52 31 34 0d 10 | 5e 04 0d 10 68 12 2e 73 |15,R14..|^...h..s|
|000035d0| 74 72 65 61 6d 63 68 65 | 63 6b 65 72 0d 10 72 2a |treamche|cker..r*|
|000035e0| 42 49 43 20 52 30 2c 52 | 30 2c 52 30 3a 42 49 43 |BIC R0,R|0,R0:BIC|
|000035f0| 20 52 32 2c 52 32 2c 52 | 32 3a 42 49 43 20 52 34 | R2,R2,R|2:BIC R4|
|00003600| 2c 52 34 2c 52 34 0d 10 | 7c 24 4c 44 52 20 52 31 |,R4,R4..||$LDR R1|
|00003610| 2c 62 75 66 66 65 72 62 | 61 73 65 3a 4c 44 52 20 |,bufferb|ase:LDR |
|00003620| 52 33 2c 62 75 66 70 6f | 73 6e 0d 10 86 15 4c 44 |R3,bufpo|sn....LD|
|00003630| 52 20 52 35 2c 73 77 69 | 74 63 68 62 61 73 65 0d |R R5,swi|tchbase.|
|00003640| 10 90 10 4c 44 52 42 20 | 52 34 2c 5b 52 35 5d 0d |...LDRB |R4,[R5].|
|00003650| 10 9a 1d 43 4d 50 20 52 | 34 2c 23 30 3a 42 45 51 |...CMP R|4,#0:BEQ|
|00003660| 20 63 6f 6d 70 73 74 63 | 68 65 63 6b 0d 10 a4 11 | compstc|heck....|
|00003670| 2e 74 6f 70 73 69 6d 70 | 63 68 65 63 6b 0d 10 ae |.topsimp|check...|
|00003680| 13 4c 44 52 42 20 52 30 | 2c 5b 52 31 2c 52 32 5d |.LDRB R0|,[R1,R2]|
|00003690| 0d 10 b8 19 43 4d 50 20 | 52 30 2c 52 34 3a 42 45 |....CMP |R0,R4:BE|
|000036a0| 51 20 66 6f 75 6e 64 73 | 74 0d 10 c2 10 41 44 44 |Q founds|t....ADD|
|000036b0| 20 52 32 2c 52 32 2c 23 | 31 0d 10 cc 1e 54 45 51 | R2,R2,#|1....TEQ|
|000036c0| 20 52 32 2c 52 33 3a 42 | 4e 45 20 74 6f 70 73 69 | R2,R3:B|NE topsi|
|000036d0| 6d 70 63 68 65 63 6b 0d | 10 d6 0f 4d 4f 56 20 52 |mpcheck.|...MOV R|
|000036e0| 31 35 2c 52 31 34 0d 10 | e0 04 0d 10 ea 10 2e 63 |15,R14..|.......c|
|000036f0| 6f 6d 70 73 74 63 68 65 | 63 6b 0d 10 f4 12 42 20 |ompstche|ck....B |
|00003700| 74 6f 70 73 69 6d 70 63 | 68 65 63 6b 0d 10 fe 0c |topsimpc|heck....|
|00003710| 2e 66 6f 75 6e 64 73 74 | 0d 11 08 27 3b 53 74 72 |.foundst|...';Str|
|00003720| 61 69 67 68 74 20 73 74 | 72 65 61 6d 63 68 65 63 |aight st|reamchec|
|00003730| 6b 73 20 77 6f 72 6b 20 | 74 6f 20 68 65 72 65 0d |ks work |to here.|
|00003740| 11 12 0f 4d 4f 56 20 52 | 31 35 2c 52 31 34 0d 11 |...MOV R|15,R14..|
|00003750| 1c 04 0d 11 26 46 2e 73 | 65 72 69 6e 70 31 3b 20 |....&F.s|erinp1; |
|00003760| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003770| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 44 | | D|
|00003780| 69 73 74 72 69 62 75 74 | 65 20 74 68 65 20 63 68 |istribut|e the ch|
|00003790| 61 72 61 63 74 65 72 73 | 0d 11 30 14 53 54 4d 46 |aracters|..0.STMF|
|000037a0| 41 20 52 31 32 21 2c 7b | 52 31 34 7d 0d 11 3a 25 |A R12!,{|R14}..:%|
|000037b0| 4c 44 52 20 52 32 2c 62 | 75 66 66 65 72 62 61 73 |LDR R2,b|ufferbas|
|000037c0| 65 3a 4c 44 52 42 20 52 | 33 2c 62 75 66 70 6f 73 |e:LDRB R|3,bufpos|
|000037d0| 6e 0d 11 44 4e 42 49 43 | 20 52 34 2c 52 34 2c 52 |n..DNBIC| R4,R4,R|
|000037e0| 34 3a 4c 44 52 20 52 35 | 2c 66 6c 61 67 62 61 73 |4:LDR R5|,flagbas|
|000037f0| 65 3b 20 20 20 20 20 20 | 20 20 20 20 20 20 52 31 |e; | R1|
|00003800| 3d 4c 61 73 74 20 63 68 | 61 72 2c 52 32 20 62 75 |=Last ch|ar,R2 bu|
|00003810| 66 62 61 73 65 2c 52 33 | 20 42 75 66 70 6f 73 0d |fbase,R3| Bufpos.|
|00003820| 11 4e 3e 4c 44 52 42 20 | 52 34 2c 69 70 75 73 65 |.N>LDRB |R4,ipuse|
|00003830| 72 3a 4d 4f 56 20 52 34 | 2c 52 34 2c 4c 53 4c 23 |r:MOV R4|,R4,LSL#|
|00003840| 35 3b 20 20 20 20 20 20 | 20 20 20 20 46 6c 61 67 |5; | Flag|
|00003850| 20 6f 66 66 73 65 74 20 | 69 6e 20 52 34 0d 11 58 | offset |in R4..X|
|00003860| 47 4c 44 52 20 52 30 2c | 5b 52 35 2c 52 34 5d 3b |GLDR R0,|[R5,R4];|
|00003870| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003880| 20 20 20 20 20 20 20 20 | 20 20 47 65 74 20 74 68 | | Get th|
|00003890| 65 20 63 68 61 6e 6e 65 | 6c 20 66 6c 61 67 20 69 |e channe|l flag i|
|000038a0| 6e 20 52 30 0d 11 62 43 | 54 53 54 20 52 30 2c 23 |n R0..bC|TST R0,#|
|000038b0| 31 3a 42 45 51 20 20 73 | 65 72 69 6e 70 31 65 72 |1:BEQ s|erinp1er|
|000038c0| 72 6e 6f 63 68 61 6e 3b | 20 20 20 20 20 20 20 20 |rnochan;| |
|000038d0| 20 51 75 69 74 20 69 66 | 20 63 68 61 6e 6e 65 6c | Quit if| channel|
|000038e0| 20 63 6c 6f 73 65 64 0d | 11 6c 42 54 53 54 20 52 | closed.|.lBTST R|
|000038f0| 30 2c 23 32 3a 42 4c 4e | 45 20 77 72 69 74 65 73 |0,#2:BLN|E writes|
|00003900| 63 72 65 65 6e 3b 20 20 | 20 20 20 20 20 20 20 20 |creen; | |
|00003910| 20 20 20 20 41 63 74 69 | 6f 6e 20 69 66 20 77 69 | Acti|on if wi|
|00003920| 6e 64 6f 77 20 6f 70 65 | 6e 0d 11 76 3c 54 53 54 |ndow ope|n..v<TST|
|00003930| 20 52 30 2c 23 34 3a 42 | 4c 4e 45 20 73 65 6e 64 | R0,#4:B|LNE send|
|00003940| 70 72 69 6e 74 3b 20 20 | 20 20 20 20 20 20 20 20 |print; | |
|00003950| 20 20 20 20 20 20 53 65 | 6e 64 20 74 6f 20 70 72 | Se|nd to pr|
|00003960| 69 6e 74 65 72 0d 11 80 | 39 54 53 54 20 52 30 2c |inter...|9TST R0,|
|00003970| 23 38 3a 42 4c 4e 45 20 | 73 65 6e 64 64 69 73 63 |#8:BLNE |senddisc|
|00003980| 3b 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |; | |
|00003990| 20 20 53 65 6e 64 20 74 | 6f 20 64 69 73 6b 0d 11 | Send t|o disk..|
|000039a0| 8a 0f 2e 73 65 72 69 6e | 70 31 6f 75 74 0d 11 94 |...serin|p1out...|
|000039b0| 14 4c 44 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 34 |.LDMFA R|12!,{R14|
|000039c0| 7d 0d 11 9e 0f 4d 4f 56 | 20 52 31 35 2c 52 31 34 |}....MOV| R15,R14|
|000039d0| 0d 11 a8 04 0d 11 b2 48 | 2e 73 65 72 69 6e 70 31 |.......H|.serinp1|
|000039e0| 65 72 72 6e 6f 63 68 61 | 6e 3b 20 41 63 74 69 6f |errnocha|n; Actio|
|000039f0| 6e 20 74 6f 20 62 65 20 | 74 61 6b 65 6e 20 75 70 |n to be |taken up|
|00003a00| 6f 6e 20 66 69 6e 64 69 | 6e 67 20 63 68 61 6e 6e |on findi|ng chann|
|00003a10| 65 6c 20 69 73 20 63 6c | 6f 73 65 64 0d 11 bc 1b |el is cl|osed....|
|00003a20| 3b 53 54 4d 46 41 20 52 | 31 32 21 2c 7b 52 30 2d |;STMFA R|12!,{R0-|
|00003a30| 52 37 2c 52 31 34 7d 0d | 11 c6 20 41 44 52 20 52 |R7,R14}.|.. ADR R|
|00003a40| 30 2c 6e 6f 63 68 61 6e | 3a 42 4c 20 72 65 70 6f |0,nochan|:BL repo|
|00003a50| 72 74 65 72 72 6f 72 0d | 11 d0 1b 3b 4c 44 4d 46 |rterror.|...;LDMF|
|00003a60| 41 20 52 31 32 21 2c 7b | 52 30 2d 52 37 2c 52 31 |A R12!,{|R0-R7,R1|
|00003a70| 34 7d 0d 11 da 10 42 20 | 73 65 72 69 6e 70 31 6f |4}....B |serinp1o|
|00003a80| 75 74 0d 11 e4 4e 2e 6e | 6f 63 68 61 6e 3a 45 51 |ut...N.n|ochan:EQ|
|00003a90| 55 44 20 30 3a 45 51 55 | 53 22 41 74 74 65 6d 70 |UD 0:EQU|S"Attemp|
|00003aa0| 74 20 74 6f 20 70 72 6f | 63 65 73 73 20 63 6c 6f |t to pro|cess clo|
|00003ab0| 73 65 64 20 73 65 72 69 | 61 6c 20 69 6e 70 75 74 |sed seri|al input|
|00003ac0| 20 63 68 61 6e 6e 65 6c | 22 3a 45 51 55 42 20 30 | channel|":EQUB 0|
|00003ad0| 0d 11 ee 09 41 4c 49 47 | 4e 0d 11 f8 04 0d 12 02 |....ALIG|N.......|
|00003ae0| 17 2e 77 69 6e 6e 6f 74 | 3a 4d 4f 56 20 52 31 35 |..winnot|:MOV R15|
|00003af0| 2c 52 31 34 0d 12 0c 04 | 0d 12 16 0e 2e 73 65 6e |,R14....|.....sen|
|00003b00| 64 70 72 69 6e 74 0d 12 | 20 16 53 54 4d 46 41 20 |dprint..| .STMFA |
|00003b10| 52 31 32 21 2c 7b 52 30 | 2d 52 36 7d 0d 12 2a 34 |R12!,{R0|-R6}..*4|
|00003b20| 4d 4f 56 20 52 31 2c 52 | 36 3a 42 49 43 20 52 34 |MOV R1,R|6:BIC R4|
|00003b30| 2c 52 34 2c 52 34 3a 42 | 49 43 20 52 30 2c 52 30 |,R4,R4:B|IC R0,R0|
|00003b40| 2c 52 30 3a 41 44 44 20 | 52 34 2c 52 34 2c 23 30 |,R0:ADD |R4,R4,#0|
|00003b50| 0d 12 34 0e 2e 74 73 65 | 6e 64 70 72 69 6e 0d 12 |..4..tse|ndprin..|
|00003b60| 3e 2d 4c 44 52 42 20 52 | 30 2c 5b 52 32 2c 52 34 |>-LDRB R|0,[R2,R4|
|00003b70| 5d 3a 54 45 51 20 52 30 | 2c 23 31 30 3a 42 45 51 |]:TEQ R0|,#10:BEQ|
|00003b80| 20 62 79 73 65 6e 64 70 | 72 69 6e 0d 12 48 15 53 | bysendp|rin..H.S|
|00003b90| 57 49 22 4f 53 5f 50 72 | 69 6e 74 43 68 61 72 22 |WI"OS_Pr|intChar"|
|00003ba0| 0d 12 52 0f 2e 62 79 73 | 65 6e 64 70 72 69 6e 0d |..R..bys|endprin.|
|00003bb0| 12 5c 28 41 44 44 20 52 | 34 2c 52 34 2c 23 31 3a |.\(ADD R|4,R4,#1:|
|00003bc0| 43 4d 50 20 52 34 2c 52 | 33 3a 42 4c 54 20 74 73 |CMP R4,R|3:BLT ts|
|00003bd0| 65 6e 64 70 72 69 6e 0d | 12 66 22 4c 44 4d 46 41 |endprin.|.f"LDMFA|
|00003be0| 20 52 31 32 21 2c 7b 52 | 30 2d 52 36 7d 3a 4d 4f | R12!,{R|0-R6}:MO|
|00003bf0| 56 20 52 31 35 2c 52 31 | 34 0d 12 70 04 0d 12 7a |V R15,R1|4..p...z|
|00003c00| 0d 2e 73 65 6e 64 64 69 | 73 63 0d 12 84 1a 3b 57 |..senddi|sc....;W|
|00003c10| 72 69 74 65 20 74 6f 20 | 61 20 73 70 6f 6f 6c 20 |rite to |a spool |
|00003c20| 66 69 6c 65 0d 12 8e 16 | 53 54 4d 46 41 20 52 31 |file....|STMFA R1|
|00003c30| 32 21 2c 7b 52 30 2d 52 | 36 7d 0d 12 98 1f 41 44 |2!,{R0-R|6}....AD|
|00003c40| 44 20 52 34 2c 52 34 2c | 23 38 3a 4c 44 52 20 52 |D R4,R4,|#8:LDR R|
|00003c50| 36 2c 5b 52 35 2c 52 34 | 5d 0d 12 a2 1b 54 53 54 |6,[R5,R4|]....TST|
|00003c60| 20 52 30 2c 23 33 32 3a | 42 4e 45 74 73 65 6e 64 | R0,#32:|BNEtsend|
|00003c70| 64 69 73 63 0d 12 ac 0e | 2e 64 73 65 6e 64 64 69 |disc....|.dsenddi|
|00003c80| 73 63 0d 12 b6 24 42 49 | 43 20 52 30 2c 52 30 2c |sc...$BI|C R0,R0,|
|00003c90| 52 30 3a 4d 4f 56 20 52 | 30 2c 23 32 3a 4d 4f 56 |R0:MOV R|0,#2:MOV|
|00003ca0| 20 52 31 2c 52 36 0d 12 | c0 10 53 57 49 22 4f 53 | R1,R6..|..SWI"OS|
|00003cb0| 5f 47 42 50 42 22 0d 12 | ca 22 4c 44 4d 46 41 20 |_GBPB"..|."LDMFA |
|00003cc0| 52 31 32 21 2c 7b 52 30 | 2d 52 36 7d 3a 4d 4f 56 |R12!,{R0|-R6}:MOV|
|00003cd0| 20 52 31 35 2c 52 31 34 | 0d 12 d4 0e 2e 74 73 65 | R15,R14|.....tse|
|00003ce0| 6e 64 64 69 73 63 0d 12 | de 34 4d 4f 56 20 52 31 |nddisc..|.4MOV R1|
|00003cf0| 2c 52 36 3a 42 49 43 20 | 52 34 2c 52 34 2c 52 34 |,R6:BIC |R4,R4,R4|
|00003d00| 3a 42 49 43 20 52 30 2c | 52 30 2c 52 30 3a 41 44 |:BIC R0,|R0,R0:AD|
|00003d10| 44 20 52 34 2c 52 34 2c | 23 30 0d 12 e8 11 2e 74 |D R4,R4,|#0.....t|
|00003d20| 6f 70 74 73 65 6e 64 64 | 69 73 63 0d 12 f2 2f 4c |optsendd|isc.../L|
|00003d30| 44 52 42 20 52 30 2c 5b | 52 32 2c 52 34 5d 3a 54 |DRB R0,[|R2,R4]:T|
|00003d40| 45 51 20 52 30 2c 23 26 | 30 44 3a 42 45 51 20 62 |EQ R0,#&|0D:BEQ b|
|00003d50| 79 74 73 65 6e 64 64 69 | 73 63 0d 12 fc 10 53 57 |ytsenddi|sc....SW|
|00003d60| 49 22 4f 53 5f 42 50 75 | 74 22 0d 13 06 10 2e 62 |I"OS_BPu|t".....b|
|00003d70| 79 74 73 65 6e 64 64 69 | 73 63 0d 13 10 2b 41 44 |ytsenddi|sc...+AD|
|00003d80| 44 20 52 34 2c 52 34 2c | 23 31 3a 43 4d 50 20 52 |D R4,R4,|#1:CMP R|
|00003d90| 34 2c 52 33 3a 42 4c 54 | 20 74 6f 70 74 73 65 6e |4,R3:BLT| toptsen|
|00003da0| 64 64 69 73 63 0d 13 1a | 22 4c 44 4d 46 41 20 52 |ddisc...|"LDMFA R|
|00003db0| 31 32 21 2c 7b 52 30 2d | 52 36 7d 3a 4d 4f 56 20 |12!,{R0-|R6}:MOV |
|00003dc0| 52 31 35 2c 52 31 34 0d | 13 24 04 0d 13 2e 40 2e |R15,R14.|.$....@.|
|00003dd0| 77 72 69 74 65 73 63 72 | 65 65 6e 3b 20 20 20 20 |writescr|een; |
|00003de0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003df0| 20 20 20 20 20 20 20 20 | 57 72 69 74 65 20 74 6f | |Write to|
|00003e00| 20 74 68 65 20 73 63 72 | 65 65 6e 0d 13 38 4d 53 | the scr|een..8MS|
|00003e10| 54 4d 46 41 20 52 31 32 | 21 2c 7b 52 30 2d 52 37 |TMFA R12|!,{R0-R7|
|00003e20| 2c 52 31 34 7d 3b 20 20 | 20 20 20 20 20 20 20 20 |,R14}; | |
|00003e30| 20 20 20 20 20 20 20 20 | 52 30 3d 66 6c 61 67 73 | |R0=flags|
|00003e40| 2c 52 31 3d 4c 61 73 74 | 20 43 68 61 72 2c 52 32 |,R1=Last| Char,R2|
|00003e50| 3d 62 75 66 62 61 73 65 | 0d 13 42 49 3b 20 20 20 |=bufbase|..BI; |
|00003e60| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003e70| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003e80| 20 20 20 20 20 52 33 3d | 62 75 66 70 6f 73 6e 2c | R3=|bufposn,|
|00003e90| 52 34 3d 6f 66 66 73 65 | 74 20 74 6f 20 66 6c 61 |R4=offse|t to fla|
|00003ea0| 67 0d 13 4c 38 3b 20 20 | 20 20 20 20 20 20 20 20 |g..L8; | |
|00003eb0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003ec0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 52 35 | | R5|
|00003ed0| 3d 66 6c 61 67 62 61 73 | 65 0d 13 56 43 3b 20 20 |=flagbas|e..VC; |
|00003ee0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003ef0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00003f00| 20 20 20 20 20 20 52 33 | 20 70 6f 69 6e 74 73 20 | R3| points |
|00003f10| 74 6f 20 6e 65 78 74 20 | 73 6c 6f 74 0d 13 60 2d |to next |slot..`-|
|00003f20| 3b 47 65 74 20 61 64 64 | 72 65 73 73 20 6f 66 20 |;Get add|ress of |
|00003f30| 63 75 72 72 65 6e 74 20 | 6c 69 6e 65 20 69 6e 20 |current |line in |
|00003f40| 74 65 78 74 73 74 6f 72 | 65 0d 13 6a 32 53 54 4d |textstor|e..j2STM|
|00003f50| 46 41 20 52 31 32 21 2c | 7b 52 32 2d 52 33 7d 3a |FA R12!,|{R2-R3}:|
|00003f60| 42 49 43 20 52 31 2c 52 | 31 2c 52 31 3a 4c 44 52 |BIC R1,R|1,R1:LDR|
|00003f70| 42 20 52 31 2c 69 70 75 | 73 65 72 0d 13 74 2e 4c |B R1,ipu|ser..t.L|
|00003f80| 44 52 20 52 32 2c 74 65 | 72 6d 6c 69 6e 65 3a 53 |DR R2,te|rmline:S|
|00003f90| 55 42 20 52 32 2c 52 32 | 2c 23 31 3a 42 4c 63 61 |UB R2,R2|,#1:BLca|
|00003fa0| 6c 63 74 65 78 74 61 64 | 64 0d 13 7e 2b 3b 4e 6f |lctextad|d..~+;No|
|00003fb0| 77 20 66 69 6e 64 20 74 | 68 65 20 5a 65 72 6f 20 |w find t|he Zero |
|00003fc0| 64 65 6e 6f 74 69 6e 67 | 20 65 6e 64 20 6f 66 20 |denoting| end of |
|00003fd0| 6c 69 6e 65 0d 13 88 0e | 42 4c 66 69 6e 64 74 68 |line....|BLfindth|
|00003fe0| 65 30 0d 13 92 1c 3b 4c | 65 74 73 20 73 74 61 72 |e0....;L|ets star|
|00003ff0| 74 20 73 68 69 66 74 69 | 6e 20 74 68 65 6d 0d 13 |t shifti|n them..|
|00004000| 9c 4a 3b 55 73 65 20 30 | 20 66 6f 72 20 63 68 61 |.J;Use 0| for cha|
|00004010| 72 2c 31 3d 62 75 66 6f | 66 66 73 65 74 2c 32 3d |r,1=bufo|ffset,2=|
|00004020| 62 75 66 62 61 73 65 2c | 33 3d 62 75 66 74 6f 74 |bufbase,|3=buftot|
|00004030| 61 6c 2c 34 3d 64 65 73 | 62 61 73 65 2c 35 3d 64 |al,4=des|base,5=d|
|00004040| 65 73 6f 66 66 73 65 74 | 0d 13 a6 33 4d 4f 56 20 |esoffset|...3MOV |
|00004050| 52 34 2c 52 31 3a 4d 4f | 56 20 52 35 2c 52 32 3a |R4,R1:MO|V R5,R2:|
|00004060| 4c 44 52 20 52 36 2c 6c | 69 6e 65 6c 65 6e 3a 53 |LDR R6,l|inelen:S|
|00004070| 55 42 20 52 36 2c 52 36 | 2c 23 32 0d 13 b0 30 4c |UB R6,R6|,#2...0L|
|00004080| 44 4d 46 41 20 52 31 32 | 21 2c 7b 52 32 2c 52 33 |DMFA R12|!,{R2,R3|
|00004090| 7d 3a 42 49 43 20 52 30 | 2c 52 30 2c 52 30 3a 42 |}:BIC R0|,R0,R0:B|
|000040a0| 49 43 20 52 31 2c 52 31 | 2c 52 31 0d 13 ba 10 2e |IC R1,R1|,R1.....|
|000040b0| 74 6f 70 77 72 69 73 68 | 69 66 74 0d 13 c4 17 43 |topwrish|ift....C|
|000040c0| 4d 50 20 52 35 2c 52 36 | 3a 42 47 54 20 77 72 69 |MP R5,R6|:BGT wri|
|000040d0| 63 72 0d 13 ce 1b 43 4d | 50 20 52 31 2c 52 33 3a |cr....CM|P R1,R3:|
|000040e0| 42 47 45 20 77 72 69 66 | 69 6e 69 73 68 0d 13 d8 |BGE wrif|inish...|
|000040f0| 13 4c 44 52 42 20 52 30 | 2c 5b 52 32 2c 52 31 5d |.LDRB R0|,[R2,R1]|
|00004100| 0d 13 e2 19 54 45 51 20 | 52 30 2c 23 26 30 44 3a |....TEQ |R0,#&0D:|
|00004110| 42 45 51 20 77 72 69 63 | 72 0d 13 ec 20 43 4d 50 |BEQ wric|r... CMP|
|00004120| 20 52 30 2c 23 26 32 30 | 3a 42 4c 54 20 64 6f 6e | R0,#&20|:BLT don|
|00004130| 74 77 72 69 73 68 69 66 | 74 0d 13 f6 22 3b 43 4d |twrishif|t...";CM|
|00004140| 50 20 52 30 2c 23 26 38 | 30 3a 3b 42 47 54 20 64 |P R0,#&8|0:;BGT d|
|00004150| 6f 6e 74 77 72 69 73 68 | 69 66 74 0d 14 00 13 53 |ontwrish|ift....S|
|00004160| 54 52 42 20 52 30 2c 5b | 52 34 2c 52 35 5d 0d 14 |TRB R0,[|R4,R5]..|
|00004170| 0a 10 41 44 44 20 52 35 | 2c 52 35 2c 23 31 0d 14 |..ADD R5|,R5,#1..|
|00004180| 14 1e 2e 64 6f 6e 74 77 | 72 69 73 68 69 66 74 3a |...dontw|rishift:|
|00004190| 41 44 44 20 52 31 2c 52 | 31 2c 23 31 0d 14 1e 11 |ADD R1,R|1,#1....|
|000041a0| 42 20 74 6f 70 77 72 69 | 73 68 69 66 74 0d 14 28 |B topwri|shift..(|
|000041b0| 04 0d 14 32 0a 2e 77 72 | 69 63 72 0d 14 3c 16 53 |...2..wr|icr..<.S|
|000041c0| 54 4d 46 41 20 52 31 32 | 21 2c 7b 52 31 2d 52 39 |TMFA R12|!,{R1-R9|
|000041d0| 7d 0d 14 46 1d 4d 4f 56 | 20 52 30 2c 23 30 3a 53 |}..F.MOV| R0,#0:S|
|000041e0| 54 52 42 20 52 30 2c 5b | 52 34 2c 52 35 5d 0d 14 |TRB R0,[|R4,R5]..|
|000041f0| 50 14 42 4c 20 66 6f 72 | 63 65 6c 69 6e 65 64 72 |P.BL for|celinedr|
|00004200| 61 77 0d 14 5a 2d 42 49 | 43 20 52 31 2c 52 31 2c |aw..Z-BI|C R1,R1,|
|00004210| 52 31 3a 4c 44 52 42 20 | 52 31 2c 69 70 75 73 65 |R1:LDRB |R1,ipuse|
|00004220| 72 3a 42 4c 20 73 68 75 | 66 66 6c 69 6e 65 73 0d |r:BL shu|fflines.|
|00004230| 14 64 37 42 49 43 20 52 | 30 2c 52 30 2c 52 30 3a |.d7BIC R|0,R0,R0:|
|00004240| 53 54 52 42 20 52 30 2c | 5b 52 34 5d 3a 42 49 43 |STRB R0,|[R4]:BIC|
|00004250| 20 52 35 2c 52 35 2c 52 | 35 3a 42 49 43 20 52 39 | R5,R5,R|5:BIC R9|
|00004260| 2c 52 39 2c 52 39 0d 14 | 6e 0e 4c 44 52 20 52 30 |,R9,R9..|n.LDR R0|
|00004270| 2c 73 73 6c 0d 14 78 17 | 54 45 51 20 52 30 2c 23 |,ssl..x.|TEQ R0,#|
|00004280| 31 3a ec 51 20 52 38 2c | 23 33 32 0d 14 82 17 54 |1:.Q R8,|#32....T|
|00004290| 45 51 20 52 30 2c 23 32 | 3a ec 51 20 52 38 2c 23 |EQ R0,#2|:.Q R8,#|
|000042a0| 31 36 0d 14 8c 16 54 45 | 51 20 52 30 2c 23 34 3a |16....TE|Q R0,#4:|
|000042b0| ec 51 20 52 38 2c 23 38 | 0d 14 96 16 54 45 51 20 |.Q R8,#8|....TEQ |
|000042c0| 52 30 2c 23 38 3a ec 51 | 20 52 38 2c 23 34 0d 14 |R0,#8:.Q| R8,#4..|
|000042d0| a0 17 54 45 51 20 52 30 | 2c 23 31 36 3a ec 51 20 |..TEQ R0|,#16:.Q |
|000042e0| 52 38 2c 23 32 0d 14 aa | 17 54 45 51 20 52 30 2c |R8,#2...|.TEQ R0,|
|000042f0| 23 33 32 3a ec 51 20 52 | 38 2c 23 31 0d 14 b4 04 |#32:.Q R|8,#1....|
|00004300| 0d 14 be 0e 2e 74 6f 70 | 73 63 72 6f 6c 6c 0d 14 |.....top|scroll..|
|00004310| c8 10 4c 44 52 20 52 37 | 2c 62 6c 6f 63 6b 0d 14 |..LDR R7|,block..|
|00004320| d2 47 4c 44 52 20 52 30 | 2c 5b 52 37 5d 3a 4c 44 |.GLDR R0|,[R7]:LD|
|00004330| 52 20 52 31 2c 5b 52 37 | 2c 23 34 34 5d 3a 4c 44 |R R1,[R7|,#44]:LD|
|00004340| 52 20 52 32 2c 5b 52 37 | 2c 23 34 38 5d 3a 4c 44 |R R2,[R7|,#48]:LD|
|00004350| 52 20 52 33 2c 62 6c 62 | 3a 41 44 44 20 52 32 2c |R R3,blb|:ADD R2,|
|00004360| 52 32 2c 52 33 0d 14 dc | 33 4c 44 52 20 52 33 2c |R2,R3...|3LDR R3,|
|00004370| 5b 52 37 2c 23 35 32 5d | 3a 4c 44 52 20 52 34 2c |[R7,#52]|:LDR R4,|
|00004380| 5b 52 37 2c 23 35 36 5d | 3a 4c 44 52 20 52 35 2c |[R7,#56]|:LDR R5,|
|00004390| 5b 52 37 2c 23 34 34 5d | 0d 14 e6 25 4d 4f 56 20 |[R7,#44]|...%MOV |
|000043a0| 52 36 2c 52 32 3a 4c 44 | 52 20 52 37 2c 73 73 6c |R6,R2:LD|R R7,ssl|
|000043b0| 3a 41 44 44 20 52 36 2c | 52 36 2c 52 37 0d 14 f0 |:ADD R6,|R6,R7...|
|000043c0| 17 53 57 49 22 57 69 6d | 70 5f 42 6c 6f 63 6b 43 |.SWI"Wim|p_BlockC|
|000043d0| 6f 70 79 22 0d 14 fa 28 | 41 44 44 20 52 39 2c 52 |opy"...(|ADD R9,R|
|000043e0| 39 2c 23 31 3a 43 4d 50 | 20 52 39 2c 52 38 3a 42 |9,#1:CMP| R9,R8:B|
|000043f0| 4c 54 20 74 6f 70 73 63 | 72 6f 6c 6c 0d 15 04 20 |LT topsc|roll... |
|00004400| 4c 44 4d 46 41 20 52 31 | 32 21 2c 7b 52 31 2d 52 |LDMFA R1|2!,{R1-R|
|00004410| 39 7d 3a 42 20 77 72 69 | 65 78 69 74 0d 15 0e 04 |9}:B wri|exit....|
|00004420| 0d 15 18 0e 2e 77 72 69 | 66 69 6e 69 73 68 0d 15 |.....wri|finish..|
|00004430| 22 1d 4d 4f 56 20 52 30 | 2c 23 30 3a 53 54 52 42 |".MOV R0|,#0:STRB|
|00004440| 20 52 30 2c 5b 52 34 2c | 52 35 5d 0d 15 2c 14 42 | R0,[R4,|R5]..,.B|
|00004450| 4c 20 66 6f 72 63 65 6c | 69 6e 65 64 72 61 77 0d |L forcel|inedraw.|
|00004460| 15 36 04 0d 15 40 0c 2e | 77 72 69 65 78 69 74 0d |.6...@..|wriexit.|
|00004470| 15 4a 26 4c 44 4d 46 41 | 20 52 31 32 21 2c 7b 52 |.J&LDMFA| R12!,{R|
|00004480| 30 2d 52 37 2c 52 31 34 | 7d 3a 4d 4f 56 20 52 31 |0-R7,R14|}:MOV R1|
|00004490| 35 2c 52 31 34 0d 15 54 | 04 0d 15 5e 2f 2e 67 65 |5,R14..T|...^/.ge|
|000044a0| 74 77 69 6e 64 6f 77 69 | 6e 66 6f 3b 20 47 65 74 |twindowi|nfo; Get|
|000044b0| 73 20 57 69 6e 64 6f 77 | 20 49 6e 66 6f 20 49 6e |s Window| Info In|
|000044c0| 74 6f 20 62 6c 6f 63 6b | 0d 15 68 16 53 54 4d 46 |to block|..h.STMF|
|000044d0| 41 20 52 31 32 21 2c 7b | 52 30 2d 52 35 7d 0d 15 |A R12!,{|R0-R5}..|
|000044e0| 72 10 42 49 43 20 52 34 | 2c 52 34 2c 52 34 0d 15 |r.BIC R4|,R4,R4..|
|000044f0| 7c 4c 4c 44 52 20 52 31 | 2c 62 6c 6f 63 6b 3a 4c ||LLDR R1|,block:L|
|00004500| 44 52 20 52 35 2c 66 6c | 61 67 62 61 73 65 3a 4c |DR R5,fl|agbase:L|
|00004510| 44 52 42 20 52 34 2c 69 | 70 75 73 65 72 3a 4d 4f |DRB R4,i|puser:MO|
|00004520| 56 20 52 34 2c 52 34 2c | 4c 53 4c 23 35 3a 41 44 |V R4,R4,|LSL#5:AD|
|00004530| 44 20 52 34 2c 52 34 2c | 23 34 0d 15 86 36 4c 44 |D R4,R4,|#4...6LD|
|00004540| 52 20 52 30 2c 5b 52 35 | 2c 52 34 5d 3a 53 54 52 |R R0,[R5|,R4]:STR|
|00004550| 20 52 30 2c 5b 52 31 5d | 3a 53 57 49 22 57 69 6d | R0,[R1]|:SWI"Wim|
|00004560| 70 5f 47 65 74 57 69 6e | 64 6f 77 49 6e 66 6f 22 |p_GetWin|dowInfo"|
|00004570| 0d 15 90 22 4c 44 4d 46 | 41 20 52 31 32 21 2c 7b |..."LDMF|A R12!,{|
|00004580| 52 30 2d 52 35 7d 3a 4d | 4f 56 20 52 31 35 2c 52 |R0-R5}:M|OV R15,R|
|00004590| 31 34 0d 15 9a 04 0d 15 | a4 30 2e 66 6f 72 63 65 |14......|.0.force|
|000045a0| 6c 69 6e 65 64 72 61 77 | 3b 20 46 6f 72 63 65 73 |linedraw|; Forces|
|000045b0| 20 72 65 64 72 61 77 20 | 6f 66 20 62 6f 74 74 6f | redraw |of botto|
|000045c0| 6d 20 6c 69 6e 65 0d 15 | ae 17 53 54 4d 46 41 20 |m line..|..STMFA |
|000045d0| 52 31 32 21 2c 7b 52 31 | 2c 52 31 34 7d 0d 15 b8 |R12!,{R1|,R14}...|
|000045e0| 1f 42 49 43 20 52 31 2c | 52 31 2c 52 31 3a 4c 44 |.BIC R1,|R1,R1:LD|
|000045f0| 52 42 20 52 31 2c 69 70 | 75 73 65 72 0d 15 c2 11 |RB R1,ip|user....|
|00004600| 42 4c 20 6d 69 6e 69 73 | 74 72 65 61 6d 0d 15 cc |BL minis|tream...|
|00004610| 16 4c 44 4d 46 41 20 31 | 32 21 2c 7b 52 31 2c 52 |.LDMFA 1|2!,{R1,R|
|00004620| 31 34 7d 0d 15 d6 0f 4d | 4f 56 20 52 31 35 2c 52 |14}....M|OV R15,R|
|00004630| 31 34 0d 15 e0 04 0d 15 | ea 0f 2e 74 65 73 74 73 |14......|...tests|
|00004640| 74 72 69 6e 67 0d 15 f4 | 33 45 51 55 53 22 54 68 |tring...|3EQUS"Th|
|00004650| 69 73 20 69 73 20 74 65 | 73 74 20 73 74 72 69 6e |is is te|st strin|
|00004660| 67 22 3a 45 51 55 42 20 | 30 3a 45 51 55 42 20 26 |g":EQUB |0:EQUB &|
|00004670| 30 44 3a 41 4c 49 47 4e | 0d 15 fe 04 0d 16 08 4a |0D:ALIGN|.......J|
|00004680| 2e 66 69 6c 74 65 72 3b | 20 20 20 20 20 20 20 20 |.filter;| |
|00004690| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000046a0| 20 20 20 20 20 20 20 20 | 20 55 73 65 64 20 74 6f | | Used to|
|000046b0| 20 66 69 6c 74 65 72 20 | 6f 75 74 20 63 68 61 72 | filter |out char|
|000046c0| 61 63 74 65 72 73 0d 16 | 12 1e 3b 54 45 51 20 52 |acters..|..;TEQ R|
|000046d0| 30 2c 23 26 30 44 3a 3b | 42 45 51 20 6f 6b 66 69 |0,#&0D:;|BEQ okfi|
|000046e0| 6c 74 65 72 0d 16 1c 1c | 43 4d 50 20 52 30 2c 23 |lter....|CMP R0,#|
|000046f0| 26 32 30 3a 42 47 45 20 | 6f 6b 66 69 6c 74 65 72 |&20:BGE |okfilter|
|00004700| 0d 16 26 1f 42 49 43 20 | 52 30 2c 52 30 2c 52 30 |..&.BIC |R0,R0,R0|
|00004710| 3a 4d 4f 56 20 52 30 2c | 23 97 28 22 21 22 29 0d |:MOV R0,|#.("!").|
|00004720| 16 30 0d 2e 6f 6b 66 69 | 6c 74 65 72 0d 16 3a 0f |.0..okfi|lter..:.|
|00004730| 4d 4f 56 20 52 31 35 2c | 52 31 34 0d 16 44 04 0d |MOV R15,|R14..D..|
|00004740| 16 4e 04 0d 16 58 04 0d | 16 62 0c 2e 74 6e 63 74 |.N...X..|.b..tnct|
|00004750| 79 70 65 0d 16 6c 13 53 | 54 52 42 20 52 31 2c 74 |ype..l.S|TRB R1,t|
|00004760| 6e 63 6e 75 6d 62 0d 16 | 76 10 42 20 6d 61 73 74 |ncnumb..|v.B mast|
|00004770| 65 72 65 78 69 74 0d 16 | 80 04 0d 16 8a 3b 2e 75 |erexit..|.....;.u|
|00004780| 73 65 69 6e 66 3b 20 49 | 6e 66 6f 72 6d 73 20 63 |seinf; I|nforms c|
|00004790| 6f 64 65 20 6f 66 20 69 | 6e 70 75 74 20 75 73 65 |ode of i|nput use|
|000047a0| 72 2e 20 20 55 73 65 72 | 20 6e 75 6d 62 65 72 20 |r. User| number |
|000047b0| 69 6e 20 52 31 0d 16 94 | 1f 53 54 52 42 20 52 31 |in R1...|.STRB R1|
|000047c0| 2c 69 70 75 73 65 72 3a | 42 20 6d 61 73 74 65 72 |,ipuser:|B master|
|000047d0| 65 78 69 74 0d 16 9e 04 | 0d 16 a8 11 2e 63 61 6c |exit....|.....cal|
|000047e0| 63 74 65 78 74 61 64 64 | 31 0d 16 b2 1f 42 4c 20 |ctextadd|1....BL |
|000047f0| 63 61 6c 63 74 65 78 74 | 61 64 64 3a 42 20 6d 61 |calctext|add:B ma|
|00004800| 73 74 65 72 65 78 69 74 | 0d 16 bc 04 0d 16 c6 46 |sterexit|.......F|
|00004810| 2e 63 61 6c 63 74 65 78 | 74 61 64 64 3b 20 43 61 |.calctex|tadd; Ca|
|00004820| 6c 63 75 6c 61 74 65 20 | 74 68 65 20 61 64 64 72 |lculate |the addr|
|00004830| 65 73 73 20 6f 66 20 61 | 20 6c 69 6e 65 20 6f 66 |ess of a| line of|
|00004840| 20 74 65 78 74 20 69 6e | 20 74 65 78 74 73 74 6f | text in| textsto|
|00004850| 72 65 0d 16 d0 42 3b 20 | 45 6e 74 65 72 20 77 69 |re...B; |Enter wi|
|00004860| 74 68 20 73 74 72 65 61 | 6d 20 69 6e 20 52 31 2c |th strea|m in R1,|
|00004870| 20 4c 69 6e 65 20 69 6e | 20 52 32 2e 20 45 78 69 | Line in| R2. Exi|
|00004880| 74 20 77 69 74 68 20 61 | 64 64 72 65 73 73 20 69 |t with a|ddress i|
|00004890| 6e 20 52 31 0d 16 da 39 | 53 54 4d 46 41 20 52 31 |n R1...9|STMFA R1|
|000048a0| 32 21 2c 7b 52 32 2d 52 | 35 2c 52 31 34 7d 3a 4c |2!,{R2-R|5,R14}:L|
|000048b0| 44 52 20 52 33 2c 74 65 | 72 6d 6c 69 6e 65 3a 4c |DR R3,te|rmline:L|
|000048c0| 44 52 20 52 34 2c 6c 69 | 6e 65 6c 65 6e 0d 16 e4 |DR R4,li|nelen...|
|000048d0| 47 4d 55 4c 20 52 35 2c | 52 32 2c 52 34 3a 4d 55 |GMUL R5,|R2,R4:MU|
|000048e0| 4c 20 52 32 2c 52 33 2c | 52 34 3a 4d 55 4c 20 52 |L R2,R3,|R4:MUL R|
|000048f0| 30 2c 52 31 2c 52 32 3a | 41 44 44 20 52 30 2c 52 |0,R1,R2:|ADD R0,R|
|00004900| 30 2c 52 35 3a 4c 44 52 | 20 52 32 2c 74 65 78 74 |0,R5:LDR| R2,text|
|00004910| 62 61 73 65 0d 16 ee 33 | 41 44 44 20 52 31 2c 52 |base...3|ADD R1,R|
|00004920| 30 2c 52 32 3a 4c 44 4d | 46 41 20 52 31 32 21 2c |0,R2:LDM|FA R12!,|
|00004930| 7b 52 32 2d 52 35 2c 52 | 31 34 7d 3a 4d 4f 56 20 |{R2-R5,R|14}:MOV |
|00004940| 52 31 35 2c 52 31 34 0d | 16 f8 04 0d 17 02 32 2e |R15,R14.|......2.|
|00004950| 66 69 6e 64 74 68 65 30 | 3b 20 46 69 6e 64 73 20 |findthe0|; Finds |
|00004960| 74 68 65 20 30 30 20 61 | 74 20 74 68 65 20 65 6e |the 00 a|t the en|
|00004970| 64 20 6f 66 20 61 20 73 | 74 72 69 6e 67 0d 17 0c |d of a s|tring...|
|00004980| 48 3b 20 45 6e 74 65 72 | 20 77 69 74 68 20 61 64 |H; Enter| with ad|
|00004990| 64 72 65 73 73 20 6f 66 | 20 53 74 72 69 6e 67 20 |dress of| String |
|000049a0| 69 6e 20 52 31 2c 20 64 | 65 70 61 72 74 20 77 69 |in R1, d|epart wi|
|000049b0| 74 68 20 52 31 20 69 6e | 74 61 63 74 20 61 6e 64 |th R1 in|tact and|
|000049c0| 20 70 6f 73 6e 0d 17 16 | 11 3b 20 6f 66 20 30 30 | posn...|.; of 00|
|000049d0| 20 69 6e 20 52 32 0d 17 | 20 2d 53 54 4d 46 41 20 | in R2..| -STMFA |
|000049e0| 52 31 32 21 2c 7b 52 30 | 7d 3a 42 49 43 20 52 32 |R12!,{R0|}:BIC R2|
|000049f0| 2c 52 32 2c 52 32 3a 42 | 49 43 20 52 30 2c 52 30 |,R2,R2:B|IC R0,R0|
|00004a00| 2c 52 30 0d 17 2a 0d 2e | 74 6f 70 66 69 6e 64 30 |,R0..*..|topfind0|
|00004a10| 0d 17 34 37 4c 44 52 42 | 20 52 30 2c 5b 52 31 2c |..47LDRB| R0,[R1,|
|00004a20| 52 32 5d 3a 54 45 51 20 | 52 30 2c 23 30 3a 42 45 |R2]:TEQ |R0,#0:BE|
|00004a30| 51 20 66 69 6e 64 30 6f | 75 74 3a 41 44 44 20 52 |Q find0o|ut:ADD R|
|00004a40| 32 2c 52 32 2c 23 31 0d | 17 3e 1b 43 4d 50 20 52 |2,R2,#1.|.>.CMP R|
|00004a50| 32 2c 23 39 30 3a 42 4c | 54 20 74 6f 70 66 69 6e |2,#90:BL|T topfin|
|00004a60| 64 30 0d 17 48 29 2e 66 | 69 6e 64 30 6f 75 74 3a |d0..H).f|ind0out:|
|00004a70| 4c 44 4d 46 41 20 52 31 | 32 21 2c 7b 52 30 7d 3a |LDMFA R1|2!,{R0}:|
|00004a80| 4d 4f 56 20 52 31 35 2c | 52 31 34 0d 17 52 04 0d |MOV R15,|R14..R..|
|00004a90| 17 5c 26 2e 73 68 75 66 | 66 31 3a 42 4c 20 73 68 |.\&.shuf|f1:BL sh|
|00004aa0| 75 66 66 6c 69 6e 65 73 | 3a 42 20 6d 61 73 74 65 |ufflines|:B maste|
|00004ab0| 72 65 78 69 74 0d 17 66 | 04 0d 17 70 34 2e 73 68 |rexit..f|...p4.sh|
|00004ac0| 75 66 66 6c 69 6e 65 73 | 3b 20 4d 6f 76 65 20 6c |ufflines|; Move l|
|00004ad0| 69 6e 65 73 20 6f 6e 65 | 20 75 70 20 69 6e 20 74 |ines one| up in t|
|00004ae0| 68 65 20 74 65 78 74 20 | 73 74 6f 72 65 0d 17 7a |he text |store..z|
|00004af0| 1d 3b 20 45 6e 74 65 72 | 20 77 69 74 68 20 73 74 |.; Enter| with st|
|00004b00| 72 65 61 6d 20 69 6e 20 | 52 31 0d 17 84 4e 53 54 |ream in |R1...NST|
|00004b10| 4d 46 41 20 52 31 32 21 | 2c 7b 52 32 2d 52 37 2c |MFA R12!|,{R2-R7,|
|00004b20| 52 31 34 7d 3a 4d 4f 56 | 20 52 34 2c 52 31 3a 42 |R14}:MOV| R4,R1:B|
|00004b30| 49 43 20 52 35 2c 52 35 | 2c 52 35 3a 4c 44 52 20 |IC R5,R5|,R5:LDR |
|00004b40| 52 36 2c 74 65 72 6d 6c | 69 6e 65 3a 53 55 42 20 |R6,terml|ine:SUB |
|00004b50| 52 36 2c 52 36 2c 23 31 | 0d 17 8e 1f 4c 44 52 20 |R6,R6,#1|....LDR |
|00004b60| 52 33 2c 6c 69 6e 65 6c | 65 6e 3a 41 44 44 20 52 |R3,linel|en:ADD R|
|00004b70| 35 2c 52 35 2c 23 31 0d | 17 98 0d 2e 74 6f 70 73 |5,R5,#1.|....tops|
|00004b80| 68 75 66 66 0d 17 a2 30 | 4d 4f 56 20 52 31 2c 52 |huff...0|MOV R1,R|
|00004b90| 34 3a 4d 4f 56 20 52 32 | 2c 52 35 3a 42 4c 20 63 |4:MOV R2|,R5:BL c|
|00004ba0| 61 6c 63 74 65 78 74 61 | 64 64 3a 4d 4f 56 20 52 |alctexta|dd:MOV R|
|00004bb0| 37 2c 52 31 0d 17 ac 33 | 4d 4f 56 20 52 31 2c 52 |7,R1...3|MOV R1,R|
|00004bc0| 34 3a 41 44 44 20 52 32 | 2c 52 35 2c 23 31 3a 42 |4:ADD R2|,R5,#1:B|
|00004bd0| 4c 20 63 61 6c 63 74 65 | 78 74 61 64 64 3a 4d 4f |L calcte|xtadd:MO|
|00004be0| 56 20 52 32 2c 52 37 0d | 17 b6 35 42 4c 20 73 68 |V R2,R7.|..5BL sh|
|00004bf0| 69 66 74 63 68 61 72 73 | 3a 41 44 44 20 52 35 2c |iftchars|:ADD R5,|
|00004c00| 52 35 2c 23 31 3a 43 4d | 50 20 52 35 2c 52 36 3a |R5,#1:CM|P R5,R6:|
|00004c10| 42 4c 54 20 74 6f 70 73 | 68 75 66 66 0d 17 c0 26 |BLT tops|huff...&|
|00004c20| 4c 44 4d 46 41 20 52 31 | 32 21 2c 7b 52 32 2d 52 |LDMFA R1|2!,{R2-R|
|00004c30| 37 2c 52 31 34 7d 3a 4d | 4f 56 20 52 31 35 2c 52 |7,R14}:M|OV R15,R|
|00004c40| 31 34 0d 17 ca 04 0d 17 | d4 25 2e 73 65 6e 64 62 |14......|.%.sendb|
|00004c50| 74 3a 42 4c 20 63 68 65 | 63 6b 66 72 65 65 3a 42 |t:BL che|ckfree:B|
|00004c60| 20 6d 61 73 74 65 72 65 | 78 69 74 0d 17 de 04 0d | mastere|xit.....|
|00004c70| 17 e8 0e 2e 63 68 65 63 | 6b 66 72 65 65 0d 17 f2 |....chec|kfree...|
|00004c80| 30 53 54 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 2c |0STMFA R|12!,{R1,|
|00004c90| 52 33 7d 3a 42 49 43 20 | 52 30 2c 52 30 2c 52 30 |R3}:BIC |R0,R0,R0|
|00004ca0| 3a 42 49 43 20 52 31 2c | 52 31 2c 52 31 0d 17 fc |:BIC R1,|R1,R1...|
|00004cb0| 28 4d 4f 56 20 52 30 2c | 23 31 32 38 3a 4d 4f 56 |(MOV R0,|#128:MOV|
|00004cc0| 20 52 31 2c 23 32 35 33 | 3a 53 57 49 22 4f 53 5f | R1,#253|:SWI"OS_|
|00004cd0| 42 79 74 65 22 0d 18 06 | 1e 43 4d 50 20 52 31 2c |Byte"...|.CMP R1,|
|00004ce0| 23 31 32 38 3a 42 4c 54 | 20 6e 6f 73 65 6e 64 66 |#128:BLT| nosendf|
|00004cf0| 69 6c 65 0d 18 10 04 0d | 18 1a 31 2e 73 65 6e 64 |ile.....|..1.send|
|00004d00| 66 69 6c 65 3b 53 65 6e | 64 20 62 79 74 65 73 20 |file;Sen|d bytes |
|00004d10| 66 72 6f 6d 20 66 69 6c | 65 20 74 6f 20 73 65 72 |from fil|e to ser|
|00004d20| 69 61 6c 20 70 6f 72 74 | 0d 18 24 2d 3b 20 20 20 |ial port|..$-; |
|00004d30| 20 20 20 20 20 20 53 74 | 72 65 61 6d 20 74 6f 20 | St|ream to |
|00004d40| 73 65 6e 64 20 62 79 74 | 65 73 20 66 72 6f 6d 20 |send byt|es from |
|00004d50| 69 6e 20 52 31 0d 18 2e | 16 4c 44 4d 46 41 20 52 |in R1...|.LDMFA R|
|00004d60| 31 32 21 2c 7b 52 31 2c | 52 33 7d 0d 18 38 3c 4d |12!,{R1,|R3}..8<M|
|00004d70| 4f 56 20 52 32 2c 52 31 | 3a 53 54 4d 46 41 20 52 |OV R2,R1|:STMFA R|
|00004d80| 31 32 21 2c 7b 52 31 34 | 7d 3a 42 4c 20 73 77 69 |12!,{R14|}:BL swi|
|00004d90| 74 63 68 6f 75 74 3a 4c | 44 4d 46 41 20 52 31 32 |tchout:L|DMFA R12|
|00004da0| 21 2c 7b 52 31 34 7d 0d | 18 42 3d 53 54 4d 46 41 |!,{R14}.|.B=STMFA|
|00004db0| 20 52 31 32 21 2c 7b 52 | 31 2d 52 35 7d 3a 42 49 | R12!,{R|1-R5}:BI|
|00004dc0| 43 20 52 34 2c 52 34 2c | 52 34 3a 42 49 43 20 52 |C R4,R4,|R4:BIC R|
|00004dd0| 32 2c 52 32 2c 52 32 3a | 42 49 43 20 52 30 2c 52 |2,R2,R2:|BIC R0,R|
|00004de0| 30 2c 52 30 0d 18 4c 3e | 4c 44 52 20 52 35 2c 66 |0,R0..L>|LDR R5,f|
|00004df0| 6c 61 67 62 61 73 65 3a | 4d 4f 56 20 52 31 2c 52 |lagbase:|MOV R1,R|
|00004e00| 31 2c 4c 53 4c 23 35 3a | 4c 44 52 20 52 34 2c 5b |1,LSL#5:|LDR R4,[|
|00004e10| 52 35 2c 52 31 5d 3a 80 | 20 52 34 2c 52 34 2c 23 |R5,R1]:.| R4,R4,#|
|00004e20| 36 34 0d 18 56 20 41 44 | 44 20 52 31 2c 52 31 2c |64..V AD|D R1,R1,|
|00004e30| 23 31 32 3a 4c 44 52 20 | 52 33 2c 5b 52 35 2c 52 |#12:LDR |R3,[R5,R|
|00004e40| 31 5d 0d 18 60 10 2e 74 | 6f 70 73 65 6e 64 66 69 |1]..`..t|opsendfi|
|00004e50| 6c 65 0d 18 6a 37 41 44 | 44 20 52 32 2c 52 32 2c |le..j7AD|D R2,R2,|
|00004e60| 23 31 3a 4d 4f 56 20 52 | 31 2c 52 33 3a 53 57 49 |#1:MOV R|1,R3:SWI|
|00004e70| 22 4f 53 5f 42 47 65 74 | 22 3a 42 43 53 20 66 69 |"OS_BGet|":BCS fi|
|00004e80| 6e 73 65 6e 64 66 69 6c | 65 0d 18 74 2c 54 45 51 |nsendfil|e..t,TEQ|
|00004e90| 20 52 30 2c 23 31 30 3a | 42 45 51 20 73 65 6e 64 | R0,#10:|BEQ send|
|00004ea0| 66 69 6c 65 6c 66 3a 2e | 72 65 74 73 65 6e 64 66 |filelf:.|retsendf|
|00004eb0| 69 6c 65 6c 66 0d 18 7e | 17 4d 4f 56 20 52 31 2c |ilelf..~|.MOV R1,|
|00004ec0| 52 30 3a 4d 4f 56 20 52 | 30 2c 23 33 0d 18 88 4d |R0:MOV R|0,#3...M|
|00004ed0| 53 54 4d 46 41 20 52 31 | 32 21 2c 7b 52 31 34 7d |STMFA R1|2!,{R14}|
|00004ee0| 3a 42 4c 20 73 65 72 64 | 72 69 76 65 3a 4c 44 4d |:BL serd|rive:LDM|
|00004ef0| 46 41 20 52 31 32 21 2c | 7b 52 31 34 7d 3a 43 4d |FA R12!,|{R14}:CM|
|00004f00| 50 20 52 32 2c 23 31 32 | 37 3a 42 4c 54 20 74 6f |P R2,#12|7:BLT to|
|00004f10| 70 73 65 6e 64 66 69 6c | 65 0d 18 92 22 4c 44 4d |psendfil|e..."LDM|
|00004f20| 46 41 20 52 31 32 21 2c | 7b 52 31 2d 52 35 7d 3a |FA R12!,|{R1-R5}:|
|00004f30| 4d 4f 56 20 52 31 35 2c | 52 31 34 0d 18 9c 10 2e |MOV R15,|R14.....|
|00004f40| 66 69 6e 73 65 6e 64 66 | 69 6c 65 0d 18 a6 15 4c |finsendf|ile....L|
|00004f50| 44 4d 46 41 20 52 31 32 | 2c 7b 52 31 2d 52 35 7d |DMFA R12|,{R1-R5}|
|00004f60| 0d 18 b0 13 4c 44 52 20 | 52 35 2c 66 6c 61 67 62 |....LDR |R5,flagb|
|00004f70| 61 73 65 0d 18 ba 3d 4d | 4f 56 20 52 31 2c 52 31 |ase...=M|OV R1,R1|
|00004f80| 2c 4c 53 4c 23 35 3a 41 | 44 44 20 52 33 2c 52 31 |,LSL#5:A|DD R3,R1|
|00004f90| 2c 23 31 32 3a 4c 44 52 | 20 52 31 2c 5b 52 35 2c |,#12:LDR| R1,[R5,|
|00004fa0| 52 33 5d 3a 42 49 43 20 | 52 30 2c 52 30 2c 52 30 |R3]:BIC |R0,R0,R0|
|00004fb0| 0d 18 c4 10 53 57 49 22 | 4f 53 5f 46 69 6e 64 22 |....SWI"|OS_Find"|
|00004fc0| 0d 18 ce 3d 53 55 42 20 | 52 33 2c 52 33 2c 23 31 |...=SUB |R3,R3,#1|
|00004fd0| 32 3a 4c 44 52 20 52 30 | 2c 5b 52 35 2c 52 33 5d |2:LDR R0|,[R5,R3]|
|00004fe0| 3a 42 49 43 20 52 30 2c | 52 30 2c 23 31 36 3a 53 |:BIC R0,|R0,#16:S|
|00004ff0| 54 52 20 52 30 2c 5b 52 | 35 2c 52 33 5d 0d 18 d8 |TR R0,[R|5,R3]...|
|00005000| 22 4c 44 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 2d |"LDMFA R|12!,{R1-|
|00005010| 52 35 7d 3a 4d 4f 56 20 | 52 31 35 2c 52 31 34 0d |R5}:MOV |R15,R14.|
|00005020| 18 e2 0f 2e 6e 6f 73 65 | 6e 64 66 69 6c 65 0d 18 |....nose|ndfile..|
|00005030| ec 22 4c 44 4d 46 41 20 | 52 31 32 21 2c 7b 52 31 |."LDMFA |R12!,{R1|
|00005040| 2c 52 33 7d 3a 4d 4f 56 | 20 52 31 35 2c 52 31 34 |,R3}:MOV| R15,R14|
|00005050| 0d 18 f6 0f 2e 73 65 6e | 64 66 69 6c 65 6c 66 0d |.....sen|dfilelf.|
|00005060| 19 00 2b 54 45 51 20 52 | 34 2c 23 30 3a 4d 4f 56 |..+TEQ R|4,#0:MOV|
|00005070| 4e 45 20 52 30 2c 23 26 | 30 44 3a 42 20 72 65 74 |NE R0,#&|0D:B ret|
|00005080| 73 65 6e 64 66 69 6c 65 | 6c 66 0d 19 0a 04 0d 19 |sendfile|lf......|
|00005090| 14 23 2e 63 68 73 6e 62 | 74 3a 42 4c 20 63 68 66 |.#.chsnb|t:BL chf|
|000050a0| 69 6e 64 62 74 3a 42 6d | 61 73 74 65 72 65 78 69 |indbt:Bm|asterexi|
|000050b0| 74 0d 19 1e 04 0d 19 28 | 43 2e 63 68 66 69 6e 64 |t......(|C.chfind|
|000050c0| 62 74 3b 20 4c 6f 6f 6b | 20 66 6f 72 20 66 69 6c |bt; Look| for fil|
|000050d0| 65 20 73 65 6e 64 69 6e | 67 20 62 79 74 65 73 2c |e sendin|g bytes,|
|000050e0| 20 61 6e 64 20 69 66 20 | 73 6f 20 67 65 74 20 74 | and if |so get t|
|000050f0| 68 65 6d 20 73 65 6e 74 | 0d 19 32 14 53 54 4d 46 |hem sent|..2.STMF|
|00005100| 41 20 52 31 32 21 2c 7b | 52 31 34 7d 0d 19 3c 43 |A R12!,{|R14}..<C|
|00005110| 4c 44 52 20 52 35 2c 66 | 6c 61 67 62 61 73 65 3a |LDR R5,f|lagbase:|
|00005120| 42 49 43 20 52 31 2c 52 | 31 2c 52 31 3a 4d 4f 56 |BIC R1,R|1,R1:MOV|
|00005130| 20 52 31 2c 23 31 3a 42 | 49 43 20 52 34 2c 52 34 | R1,#1:B|IC R4,R4|
|00005140| 2c 52 34 3a 4c 44 52 42 | 20 52 34 2c 73 74 6d 0d |,R4:LDRB| R4,stm.|
|00005150| 19 46 10 2e 74 6f 70 63 | 68 66 69 6e 64 62 74 0d |.F..topc|hfindbt.|
|00005160| 19 50 22 4d 4f 56 20 52 | 32 2c 52 31 2c 4c 53 4c |.P"MOV R|2,R1,LSL|
|00005170| 23 35 3a 4c 44 52 20 52 | 33 2c 5b 52 35 2c 52 32 |#5:LDR R|3,[R5,R2|
|00005180| 5d 0d 19 5a 1c 54 53 54 | 20 52 33 2c 23 31 3a 42 |]..Z.TST| R3,#1:B|
|00005190| 45 51 20 61 76 63 68 66 | 69 6e 64 62 74 0d 19 64 |EQ avchf|indbt..d|
|000051a0| 1d 54 53 54 20 52 33 2c | 23 31 36 3a 42 4c 4e 45 |.TST R3,|#16:BLNE|
|000051b0| 20 63 68 65 63 6b 66 72 | 65 65 0d 19 6e 0f 2e 61 | checkfr|ee..n..a|
|000051c0| 76 63 68 66 69 6e 64 62 | 74 0d 19 78 2a 41 44 44 |vchfindb|t..x*ADD|
|000051d0| 20 52 31 2c 52 31 2c 23 | 31 3a 43 4d 50 20 52 31 | R1,R1,#|1:CMP R1|
|000051e0| 2c 52 34 3a 42 4c 45 20 | 74 6f 70 63 68 66 69 6e |,R4:BLE |topchfin|
|000051f0| 64 62 74 0d 19 82 20 4c | 44 4d 46 41 20 52 31 32 |dbt... L|DMFA R12|
|00005200| 21 2c 7b 52 31 34 7d 3a | 4d 4f 56 20 52 31 35 2c |!,{R14}:|MOV R15,|
|00005210| 52 31 34 0d 19 8c 04 0d | 19 96 05 3b 0d 19 a0 13 |R14.....|...;....|
|00005220| 3b 20 53 63 72 65 65 6e | 20 52 65 64 72 61 77 0d |; Screen| Redraw.|
|00005230| 19 aa 13 3b 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |...;====|========|
|00005240| 3d 3d 0d 19 b4 05 3b 0d | 19 be 26 2e 73 74 72 64 |==....;.|..&.strd|
|00005250| 72 31 3a 42 4c 20 73 74 | 72 65 61 6d 64 72 61 77 |r1:BL st|reamdraw|
|00005260| 3a 42 20 6d 61 73 74 65 | 72 65 78 69 74 0d 19 c8 |:B maste|rexit...|
|00005270| 26 2e 73 74 72 64 72 32 | 3a 42 4c 20 6d 69 6e 69 |&.strdr2|:BL mini|
|00005280| 73 74 72 65 61 6d 3a 42 | 20 6d 61 73 74 65 72 65 |stream:B| mastere|
|00005290| 78 69 74 0d 19 d2 04 0d | 19 dc 0f 2e 6d 69 6e 69 |xit.....|....mini|
|000052a0| 73 74 72 65 61 6d 0d 19 | e6 1d 3b 20 45 6e 74 65 |stream..|..; Ente|
|000052b0| 72 20 77 69 74 68 20 73 | 74 72 65 61 6d 20 69 6e |r with s|tream in|
|000052c0| 20 52 31 0d 19 f0 1a 53 | 54 4d 46 41 20 52 31 32 | R1....S|TMFA R12|
|000052d0| 21 2c 7b 52 31 2d 52 38 | 2c 52 31 34 7d 0d 19 fa |!,{R1-R8|,R14}...|
|000052e0| 3f 4c 44 52 20 52 35 2c | 66 6c 61 67 62 61 73 65 |?LDR R5,|flagbase|
|000052f0| 3a 4d 4f 56 20 52 31 2c | 52 31 2c 4c 53 4c 23 35 |:MOV R1,|R1,LSL#5|
|00005300| 3a 41 44 44 20 52 31 2c | 52 31 2c 23 34 3a 4c 44 |:ADD R1,|R1,#4:LD|
|00005310| 52 20 52 30 2c 5b 52 35 | 2c 52 31 5d 0d 1a 04 1c |R R0,[R5|,R1]....|
|00005320| 4c 44 52 20 52 31 2c 62 | 6c 6f 63 6b 3a 53 54 52 |LDR R1,b|lock:STR|
|00005330| 20 52 30 2c 5b 52 31 5d | 0d 1a 0e 1b 53 57 49 22 | R0,[R1]|....SWI"|
|00005340| 57 69 6d 70 5f 47 65 74 | 57 69 6e 64 6f 77 49 6e |Wimp_Get|WindowIn|
|00005350| 66 6f 22 0d 1a 18 22 4c | 44 52 20 52 30 2c 5b 52 |fo"..."L|DR R0,[R|
|00005360| 31 2c 23 34 34 5d 3a 53 | 54 52 20 52 30 2c 5b 52 |1,#44]:S|TR R0,[R|
|00005370| 31 2c 23 34 5d 0d 1a 22 | 32 4c 44 52 20 52 30 2c |1,#4].."|2LDR R0,|
|00005380| 5b 52 31 2c 23 34 38 5d | 3a 41 44 44 53 20 52 30 |[R1,#48]|:ADDS R0|
|00005390| 2c 52 30 2c 23 31 35 30 | 3a 53 54 52 20 52 30 2c |,R0,#150|:STR R0,|
|000053a0| 5b 52 31 2c 23 38 5d 0d | 1a 2c 23 4c 44 52 20 52 |[R1,#8].|.,#LDR R|
|000053b0| 30 2c 5b 52 31 2c 23 35 | 32 5d 3a 53 54 52 20 52 |0,[R1,#5|2]:STR R|
|000053c0| 30 2c 5b 52 31 2c 23 31 | 32 5d 0d 1a 36 31 4c 44 |0,[R1,#1|2]..61LD|
|000053d0| 52 20 52 30 2c 5b 52 31 | 2c 23 38 5d 3a 41 44 44 |R R0,[R1|,#8]:ADD|
|000053e0| 53 20 52 30 2c 52 30 2c | 23 34 38 3a 53 54 52 20 |S R0,R0,|#48:STR |
|000053f0| 52 30 2c 5b 52 31 2c 23 | 31 36 5d 0d 1a 40 1a 53 |R0,[R1,#|16]..@.S|
|00005400| 57 49 22 57 69 6d 70 5f | 55 70 64 61 74 65 57 69 |WI"Wimp_|UpdateWi|
|00005410| 6e 64 6f 77 22 0d 1a 4a | 10 42 20 6d 61 69 6e 73 |ndow"..J|.B mains|
|00005420| 74 72 65 61 6d 0d 1a 54 | 04 0d 1a 5e 39 2e 73 74 |tream..T|...^9.st|
|00005430| 72 65 61 6d 64 72 61 77 | 3b 20 44 72 61 77 20 74 |reamdraw|; Draw t|
|00005440| 68 65 20 73 74 72 65 61 | 6d 20 74 65 78 74 20 69 |he strea|m text i|
|00005450| 6e 20 74 68 65 20 72 69 | 67 68 74 20 77 69 6e 64 |n the ri|ght wind|
|00005460| 6f 77 0d 1a 68 1d 3b 20 | 45 6e 74 65 72 20 77 69 |ow..h.; |Enter wi|
|00005470| 74 68 20 73 74 72 65 61 | 6d 20 69 6e 20 52 31 0d |th strea|m in R1.|
|00005480| 1a 72 4c 3b 20 52 65 6d | 65 6d 62 65 72 20 74 68 |.rL; Rem|ember th|
|00005490| 61 74 20 61 74 20 73 6f | 6d 65 20 73 74 61 67 65 |at at so|me stage|
|000054a0| 20 79 6f 75 20 77 69 6c | 6c 20 68 61 76 65 20 74 | you wil|l have t|
|000054b0| 6f 20 64 65 63 6f 64 65 | 20 73 74 72 65 61 6d 20 |o decode| stream |
|000054c0| 66 72 6f 6d 20 62 6c 6f | 63 6b 21 0d 1a 7c 1a 53 |from blo|ck!..|.S|
|000054d0| 54 4d 46 41 20 52 31 32 | 21 2c 7b 52 31 2d 52 38 |TMFA R12|!,{R1-R8|
|000054e0| 2c 52 31 34 7d 0d 1a 86 | 31 53 54 52 20 52 31 2c |,R14}...|1STR R1,|
|000054f0| 74 73 3a 4c 44 52 20 52 | 31 2c 62 6c 6f 63 6b 3a |ts:LDR R|1,block:|
|00005500| 53 57 49 22 57 69 6d 70 | 5f 52 65 64 72 61 77 57 |SWI"Wimp|_RedrawW|
|00005510| 69 6e 64 6f 77 22 0d 1a | 90 0f 2e 6d 61 69 6e 73 |indow"..|...mains|
|00005520| 74 72 65 61 6d 0d 1a 9a | 30 4c 44 52 20 52 32 2c |tream...|0LDR R2,|
|00005530| 5b 52 31 2c 23 34 5d 3a | 4c 44 52 20 52 37 2c 5b |[R1,#4]:|LDR R7,[|
|00005540| 52 31 2c 23 32 30 5d 3a | 53 55 42 53 20 52 32 2c |R1,#20]:|SUBS R2,|
|00005550| 52 32 2c 52 37 0d 1a a4 | 31 4c 44 52 20 52 33 2c |R2,R7...|1LDR R3,|
|00005560| 5b 52 31 2c 23 31 36 5d | 3a 4c 44 52 20 52 37 2c |[R1,#16]|:LDR R7,|
|00005570| 5b 52 31 2c 23 32 34 5d | 3a 53 55 42 53 20 52 33 |[R1,#24]|:SUBS R3|
|00005580| 2c 52 33 2c 52 37 0d 1a | ae 0e 2e 73 74 64 77 68 |,R3,R7..|...stdwh|
|00005590| 69 6c 65 31 0d 1a b8 1f | 20 54 45 51 20 52 30 2c |ile1....| TEQ R0,|
|000055a0| 23 30 3a 42 45 51 20 6f | 75 74 73 74 64 77 68 69 |#0:BEQ o|utstdwhi|
|000055b0| 6c 65 31 0d 1a c2 11 20 | 4c 44 52 20 52 31 2c 62 |le1.... |LDR R1,b|
|000055c0| 6c 6f 63 6b 0d 1a cc 4c | 20 4d 4f 56 20 52 36 2c |lock...L| MOV R6,|
|000055d0| 52 33 3a 4c 44 52 20 52 | 37 2c 5b 52 31 2c 23 34 |R3:LDR R|7,[R1,#4|
|000055e0| 30 5d 3a 53 55 42 53 20 | 52 36 2c 52 36 2c 52 37 |0]:SUBS |R6,R6,R7|
|000055f0| 3a 53 55 42 53 20 52 36 | 2c 52 36 2c 23 34 37 3a |:SUBS R6|,R6,#47:|
|00005600| 4d 4f 56 53 20 52 36 2c | 52 36 2c 41 53 52 23 35 |MOVS R6,|R6,ASR#5|
|00005610| 0d 1a d6 29 20 43 4d 50 | 20 52 36 2c 23 30 3a 4d |...) CMP| R6,#0:M|
|00005620| 4f 56 4c 54 53 20 52 36 | 2c 23 30 3a 41 44 44 53 |OVLTS R6|,#0:ADDS|
|00005630| 20 52 36 2c 52 36 2c 23 | 31 0d 1a e0 4c 20 41 44 | R6,R6,#|1...L AD|
|00005640| 44 53 20 52 35 2c 52 33 | 2c 23 34 37 3a 4c 44 52 |DS R5,R3|,#47:LDR|
|00005650| 20 52 37 2c 5b 52 31 2c | 23 33 32 5d 3a 53 55 42 | R7,[R1,|#32]:SUB|
|00005660| 53 20 52 35 2c 52 35 2c | 52 37 3a 4d 4f 56 53 20 |S R5,R5,|R7:MOVS |
|00005670| 52 35 2c 52 35 2c 41 53 | 52 23 35 3a 4d 4f 56 20 |R5,R5,AS|R#5:MOV |
|00005680| 52 38 2c 52 36 0d 1a ea | 22 20 4c 44 52 20 52 37 |R8,R6...|" LDR R7|
|00005690| 2c 74 65 72 6d 6c 69 6e | 65 3a 41 44 44 53 20 52 |,termlin|e:ADDS R|
|000056a0| 37 2c 52 37 2c 23 31 0d | 1a f4 0f 20 2e 73 74 64 |7,R7,#1.|... .std|
|000056b0| 77 68 69 6c 65 32 0d 1a | fe 20 20 20 43 4d 50 20 |while2..|. CMP |
|000056c0| 52 38 2c 52 37 3a 42 47 | 45 20 6f 75 74 73 74 64 |R8,R7:BG|E outstd|
|000056d0| 77 68 69 6c 65 32 0d 1b | 08 20 20 20 43 4d 50 20 |while2..|. CMP |
|000056e0| 52 38 2c 52 35 3a 42 47 | 54 20 6f 75 74 73 74 64 |R8,R5:BG|T outstd|
|000056f0| 77 68 69 6c 65 32 0d 1b | 12 29 20 20 53 54 4d 46 |while2..|.) STMF|
|00005700| 41 20 52 31 32 21 2c 7b | 52 30 2d 52 34 2c 52 38 |A R12!,{|R0-R4,R8|
|00005710| 2c 52 31 34 7d 3a 4d 4f | 56 20 52 34 2c 52 38 0d |,R14}:MO|V R4,R8.|
|00005720| 1b 1c 47 20 20 4d 4f 56 | 20 52 30 2c 23 32 34 34 |..G MOV| R0,#244|
|00005730| 3a 4d 4f 56 20 52 31 2c | 52 32 3a 4d 4f 56 53 20 |:MOV R1,|R2:MOVS |
|00005740| 52 34 2c 52 34 2c 4c 53 | 4c 23 35 3a 53 55 42 53 |R4,R4,LS|L#5:SUBS|
|00005750| 20 52 32 2c 52 33 2c 52 | 34 3a 53 57 49 22 4f 53 | R2,R3,R|4:SWI"OS|
|00005760| 5f 50 6c 6f 74 22 0d 1b | 26 41 20 20 4c 44 52 20 |_Plot"..|&A LDR |
|00005770| 52 31 2c 74 73 3a 4d 4f | 56 20 52 32 2c 52 38 3a |R1,ts:MO|V R2,R8:|
|00005780| 42 4c 20 63 61 6c 63 74 | 65 78 74 61 64 64 3a 4d |BL calct|extadd:M|
|00005790| 4f 56 20 52 30 2c 52 31 | 3a 53 57 49 22 4f 53 5f |OV R0,R1|:SWI"OS_|
|000057a0| 57 72 69 74 65 30 22 0d | 1b 30 04 0d 1b 3a 2d 20 |Write0".|.0...:- |
|000057b0| 20 4c 44 4d 46 41 20 52 | 31 32 21 2c 7b 52 30 2d | LDMFA R|12!,{R0-|
|000057c0| 52 34 2c 52 38 2c 52 31 | 34 7d 3a 41 44 44 53 20 |R4,R8,R1|4}:ADDS |
|000057d0| 52 38 2c 52 38 2c 23 31 | 0d 1b 44 11 20 20 42 20 |R8,R8,#1|..D. B |
|000057e0| 73 74 64 77 68 69 6c 65 | 32 0d 1b 4e 12 20 2e 6f |stdwhile|2..N. .o|
|000057f0| 75 74 73 74 64 77 68 69 | 6c 65 32 0d 1b 58 28 20 |utstdwhi|le2..X( |
|00005800| 4c 44 52 20 52 31 2c 62 | 6c 6f 63 6b 3a 53 57 49 |LDR R1,b|lock:SWI|
|00005810| 22 57 69 6d 70 5f 47 65 | 74 52 65 63 74 61 6e 67 |"Wimp_Ge|tRectang|
|00005820| 6c 65 22 0d 1b 62 0f 42 | 20 73 74 64 77 68 69 6c |le"..b.B| stdwhil|
|00005830| 65 31 0d 1b 6c 11 2e 6f | 75 74 73 74 64 77 68 69 |e1..l..o|utstdwhi|
|00005840| 6c 65 31 0d 1b 76 26 4c | 44 4d 46 41 20 52 31 32 |le1..v&L|DMFA R12|
|00005850| 21 2c 7b 52 31 2d 52 38 | 2c 52 31 34 7d 3a 4d 4f |!,{R1-R8|,R14}:MO|
|00005860| 56 20 52 31 35 2c 52 31 | 34 0d 1b 80 05 3b 0d 1b |V R15,R1|4....;..|
|00005870| 8a 13 3b 53 70 72 69 74 | 65 20 4c 6f 61 64 69 6e |..;Sprit|e Loadin|
|00005880| 67 0d 1b 94 13 3b 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |g....;==|========|
|00005890| 3d 3d 3d 3d 0d 1b 9e 05 | 3b 0d 1b a8 0f 2e 73 70 |====....|;.....sp|
|000058a0| 72 69 74 65 6c 6f 61 64 | 0d 1b b2 39 4d 4f 56 20 |riteload|...9MOV |
|000058b0| 52 30 2c 23 26 30 42 3a | 41 44 52 20 52 32 2c 73 |R0,#&0B:|ADR R2,s|
|000058c0| 70 72 69 74 65 70 61 74 | 68 3a 53 57 49 20 26 34 |pritepat|h:SWI &4|
|000058d0| 30 30 45 39 3a 42 20 6d | 61 73 74 65 72 65 78 69 |00E9:B m|asterexi|
|000058e0| 74 0d 1b bc 0f 2e 73 70 | 72 69 74 65 70 61 74 68 |t.....sp|ritepath|
|000058f0| 0d 1b c6 2a 45 51 55 53 | 22 3c 54 4e 43 38 24 44 |...*EQUS|"<TNC8$D|
|00005900| 69 72 3e 2e 21 53 70 72 | 69 74 65 73 22 3a 45 51 |ir>.!Spr|ites":EQ|
|00005910| 55 42 20 30 3a 41 4c 49 | 47 4e 0d 1b d0 05 3b 0d |UB 0:ALI|GN....;.|
|00005920| 1b da 1f 3b 54 65 72 6d | 69 6e 61 6c 20 74 6f 20 |...;Term|inal to |
|00005930| 54 4e 43 20 66 61 63 69 | 6c 69 74 69 65 73 0d 1b |TNC faci|lities..|
|00005940| e4 1f 3b 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |..;=====|========|
|00005950| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 0d 1b ee |========|=====...|
|00005960| 04 0d 1b f8 30 2e 73 65 | 6e 64 73 74 3a 42 4c 20 |....0.se|ndst:BL |
|00005970| 73 77 69 74 63 68 6f 75 | 74 3a 42 4c 20 73 65 6e |switchou|t:BL sen|
|00005980| 64 73 74 31 3a 42 20 6d | 61 73 74 65 72 65 78 69 |dst1:B m|asterexi|
|00005990| 74 0d 1c 02 30 2e 73 65 | 6e 64 73 6d 3a 42 4c 20 |t...0.se|ndsm:BL |
|000059a0| 73 77 69 74 63 68 6f 75 | 74 3a 42 4c 20 73 65 6e |switchou|t:BL sen|
|000059b0| 64 73 6d 31 3a 42 20 6d | 61 73 74 65 72 65 78 69 |dsm1:B m|asterexi|
|000059c0| 74 0d 1c 0c 05 3b 0d 1c | 16 39 2e 73 65 6e 64 73 |t....;..|.9.sends|
|000059d0| 74 31 3b 20 53 65 6e 64 | 20 61 20 43 52 20 6f 72 |t1; Send| a CR or|
|000059e0| 20 30 20 74 65 72 6d 69 | 6e 61 74 65 64 20 73 74 | 0 termi|nated st|
|000059f0| 72 69 6e 67 20 74 6f 20 | 74 68 65 20 54 4e 43 0d |ring to |the TNC.|
|00005a00| 1c 20 2b 3b 20 20 20 20 | 20 20 20 20 20 52 31 20 |. +; | R1 |
|00005a10| 63 6f 6e 74 61 69 6e 73 | 20 61 64 64 72 65 73 73 |contains| address|
|00005a20| 20 6f 66 20 73 74 72 69 | 6e 67 0d 1c 2a 3e 42 49 | of stri|ng..*>BI|
|00005a30| 43 20 52 32 2c 52 32 2c | 52 32 3a 42 49 43 20 52 |C R2,R2,|R2:BIC R|
|00005a40| 33 2c 52 33 2c 52 33 3a | 42 49 43 20 52 30 2c 52 |3,R3,R3:|BIC R0,R|
|00005a50| 30 2c 52 30 3a 4d 4f 56 | 20 52 30 2c 23 33 3a 4d |0,R0:MOV| R0,#3:M|
|00005a60| 4f 56 20 52 32 2c 52 31 | 0d 1c 34 0f 2e 74 6f 70 |OV R2,R1|..4..top|
|00005a70| 73 65 6e 64 73 74 31 0d | 1c 3e 13 4c 44 52 42 20 |sendst1.|.>.LDRB |
|00005a80| 52 31 2c 5b 52 32 2c 52 | 33 5d 0d 1c 48 31 53 54 |R1,[R2,R|3]..H1ST|
|00005a90| 4d 46 41 20 52 31 32 21 | 2c 7b 52 31 34 7d 3a 42 |MFA R12!|,{R14}:B|
|00005aa0| 4c 20 73 65 72 64 72 69 | 76 65 3a 4c 44 4d 46 41 |L serdri|ve:LDMFA|
|00005ab0| 20 52 31 32 21 2c 7b 52 | 31 34 7d 0d 1c 52 20 42 | R12!,{R|14}..R B|
|00005ac0| 43 53 20 73 65 6e 64 73 | 74 31 74 72 6f 75 62 3a |CS sends|t1troub:|
|00005ad0| 2e 72 65 74 73 65 6e 64 | 73 74 31 0d 1c 5c 2f 54 |.retsend|st1..\/T|
|00005ae0| 45 51 20 52 31 2c 23 26 | 30 44 3a ec 51 20 52 31 |EQ R1,#&|0D:.Q R1|
|00005af0| 35 2c 52 31 34 3a 54 45 | 51 20 52 31 2c 23 30 3a |5,R14:TE|Q R1,#0:|
|00005b00| ec 51 20 52 31 35 2c 52 | 31 34 0d 1c 66 1d 41 44 |.Q R15,R|14..f.AD|
|00005b10| 44 20 52 33 2c 52 33 2c | 23 31 3a 42 20 74 6f 70 |D R3,R3,|#1:B top|
|00005b20| 73 65 6e 64 73 74 31 0d | 1c 70 11 2e 73 65 6e 64 |sendst1.|.p..send|
|00005b30| 73 74 31 74 72 6f 75 62 | 0d 1c 7a 40 53 54 4d 46 |st1troub|..z@STMF|
|00005b40| 41 20 52 31 32 21 2c 7b | 52 31 34 7d 3a 42 4c 20 |A R12!,{|R14}:BL |
|00005b50| 73 65 72 64 72 69 76 65 | 3a 4c 44 4d 46 41 20 52 |serdrive|:LDMFA R|
|00005b60| 31 32 21 2c 7b 52 31 34 | 7d 3a 42 43 43 20 72 65 |12!,{R14|}:BCC re|
|00005b70| 74 73 65 6e 64 73 74 31 | 0d 1c 84 40 53 54 4d 46 |tsendst1|...@STMF|
|00005b80| 41 20 52 31 32 21 2c 7b | 52 31 34 7d 3a 42 4c 20 |A R12!,{|R14}:BL |
|00005b90| 73 65 72 64 72 69 76 65 | 3a 4c 44 4d 46 41 20 52 |serdrive|:LDMFA R|
|00005ba0| 31 32 21 2c 7b 52 31 34 | 7d 3a 42 43 43 20 72 65 |12!,{R14|}:BCC re|
|00005bb0| 74 73 65 6e 64 73 74 31 | 0d 1c 8e 40 53 54 4d 46 |tsendst1|...@STMF|
|00005bc0| 41 20 52 31 32 21 2c 7b | 52 31 34 7d 3a 42 4c 20 |A R12!,{|R14}:BL |
|00005bd0| 73 65 72 64 72 69 76 65 | 3a 4c 44 4d 46 41 20 52 |serdrive|:LDMFA R|
|00005be0| 31 32 21 2c 7b 52 31 34 | 7d 3a 42 43 43 20 72 65 |12!,{R14|}:BCC re|
|00005bf0| 74 73 65 6e 64 73 74 31 | 0d 1c 98 0d 2e 73 65 6e |tsendst1|.....sen|
|00005c00| 64 73 6d 62 31 0d 1c a2 | 46 41 44 52 20 52 30 2c |dsmb1...|FADR R0,|
|00005c10| 73 65 6e 64 73 74 31 6d | 73 67 3a 53 54 4d 46 41 |sendst1m|sg:STMFA|
|00005c20| 20 52 31 32 21 2c 7b 52 | 31 34 7d 3a 42 4c 20 72 | R12!,{R|14}:BL r|
|00005c30| 65 70 6f 72 74 65 72 72 | 6f 72 3a 4c 44 4d 46 41 |eporterr|or:LDMFA|
|00005c40| 20 52 31 32 21 2c 7b 52 | 31 34 7d 0d 1c ac 22 4d | R12!,{R|14}..."M|
|00005c50| 4f 56 20 52 31 35 2c 52 | 31 34 3a 2e 73 65 6e 64 |OV R15,R|14:.send|
|00005c60| 73 74 31 6d 73 67 3a 45 | 51 55 44 20 30 0d 1c b6 |st1msg:E|QUD 0...|
|00005c70| 4a 45 51 55 53 20 22 53 | 65 72 69 61 6c 20 6f 75 |JEQUS "S|erial ou|
|00005c80| 74 70 75 74 20 70 6f 72 | 74 20 63 6f 6e 73 74 69 |tput por|t consti|
|00005c90| 70 61 74 65 64 2c 20 70 | 6f 73 73 69 62 6c 65 20 |pated, p|ossible |
|00005ca0| 64 61 74 61 20 6c 6f 73 | 73 22 3a 45 51 55 42 20 |data los|s":EQUB |
|00005cb0| 30 3a 41 4c 49 47 4e 0d | 1c c0 04 0d 1c ca 39 2e |0:ALIGN.|......9.|
|00005cc0| 73 65 6e 64 73 6d 31 3b | 20 53 65 6e 64 20 61 20 |sendsm1;| Send a |
|00005cd0| 43 52 20 6f 72 20 30 20 | 74 65 72 6d 69 6e 61 74 |CR or 0 |terminat|
|00005ce0| 65 64 20 73 74 72 69 6e | 67 20 74 6f 20 74 68 65 |ed strin|g to the|
|00005cf0| 20 54 4e 43 0d 1c d4 46 | 3b 20 20 20 20 20 20 20 | TNC...F|; |
|00005d00| 20 20 75 73 69 6e 67 20 | 26 35 45 20 74 6f 20 69 | using |&5E to i|
|00005d10| 6e 64 69 63 61 74 65 20 | 74 68 61 74 20 74 68 65 |ndicate |that the|
|00005d20| 20 6e 65 78 74 20 63 68 | 61 72 61 63 74 65 72 20 | next ch|aracter |
|00005d30| 69 73 20 63 6f 6e 74 72 | 6f 6c 0d 1c de 2b 3b 20 |is contr|ol...+; |
|00005d40| 20 20 20 20 20 20 20 20 | 52 31 20 63 6f 6e 74 61 | |R1 conta|
|00005d50| 69 6e 73 20 61 64 64 72 | 65 73 73 20 6f 66 20 73 |ins addr|ess of s|
|00005d60| 74 72 69 6e 67 0d 1c e8 | 3e 42 49 43 20 52 32 2c |tring...|>BIC R2,|
|00005d70| 52 32 2c 52 32 3a 42 49 | 43 20 52 33 2c 52 33 2c |R2,R2:BI|C R3,R3,|
|00005d80| 52 33 3a 42 49 43 20 52 | 30 2c 52 30 2c 52 30 3a |R3:BIC R|0,R0,R0:|
|00005d90| 4d 4f 56 20 52 30 2c 23 | 33 3a 4d 4f 56 20 52 32 |MOV R0,#|3:MOV R2|
|00005da0| 2c 52 31 0d 1c f2 0f 2e | 74 6f 70 73 65 6e 64 73 |,R1.....|topsends|
|00005db0| 6d 31 0d 1c fc 3b 4c 44 | 52 42 20 52 31 2c 5b 52 |m1...;LD|RB R1,[R|
|00005dc0| 32 2c 52 33 5d 3a 54 45 | 51 20 52 31 2c 23 26 35 |2,R3]:TE|Q R1,#&5|
|00005dd0| 45 3a 42 45 51 20 73 65 | 6e 64 73 6d 31 70 72 6f |E:BEQ se|ndsm1pro|
|00005de0| 63 3a 2e 72 65 74 73 6d | 31 70 72 6f 63 0d 1d 06 |c:.retsm|1proc...|
|00005df0| 13 53 54 4d 46 41 20 31 | 32 21 2c 7b 52 31 34 7d |.STMFA 1|2!,{R14}|
|00005e00| 0d 1d 10 0f 42 4c 20 73 | 65 72 64 72 69 76 65 0d |....BL s|erdrive.|
|00005e10| 1d 1a 31 4c 44 4d 46 41 | 20 52 31 32 21 2c 7b 52 |..1LDMFA| R12!,{R|
|00005e20| 31 34 7d 3a 42 43 53 20 | 73 65 6e 64 73 6d 31 74 |14}:BCS |sendsm1t|
|00005e30| 72 6f 75 62 3a 2e 72 65 | 74 73 65 6e 64 73 6d 31 |roub:.re|tsendsm1|
|00005e40| 0d 1d 24 2f 54 45 51 20 | 52 31 2c 23 26 30 44 3a |..$/TEQ |R1,#&0D:|
|00005e50| ec 51 20 52 31 35 2c 52 | 31 34 3a 54 45 51 20 52 |.Q R15,R|14:TEQ R|
|00005e60| 31 2c 23 30 3a ec 51 20 | 52 31 35 2c 52 31 34 0d |1,#0:.Q |R15,R14.|
|00005e70| 1d 2e 1d 41 44 44 20 52 | 33 2c 52 33 2c 23 31 3a |...ADD R|3,R3,#1:|
|00005e80| 42 20 74 6f 70 73 65 6e | 64 73 6d 31 0d 1d 38 11 |B topsen|dsm1..8.|
|00005e90| 2e 73 65 6e 64 73 6d 31 | 74 72 6f 75 62 0d 1d 42 |.sendsm1|troub..B|
|00005ea0| 40 53 54 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 34 |@STMFA R|12!,{R14|
|00005eb0| 7d 3a 42 4c 20 73 65 72 | 64 72 69 76 65 3a 4c 44 |}:BL ser|drive:LD|
|00005ec0| 4d 46 41 20 52 31 32 21 | 2c 7b 52 31 34 7d 3a 42 |MFA R12!|,{R14}:B|
|00005ed0| 43 43 20 72 65 74 73 65 | 6e 64 73 6d 31 0d 1d 4c |CC retse|ndsm1..L|
|00005ee0| 40 53 54 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 34 |@STMFA R|12!,{R14|
|00005ef0| 7d 3a 42 4c 20 73 65 72 | 64 72 69 76 65 3a 4c 44 |}:BL ser|drive:LD|
|00005f00| 4d 46 41 20 52 31 32 21 | 2c 7b 52 31 34 7d 3a 42 |MFA R12!|,{R14}:B|
|00005f10| 43 43 20 72 65 74 73 65 | 6e 64 73 6d 31 0d 1d 56 |CC retse|ndsm1..V|
|00005f20| 40 53 54 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 34 |@STMFA R|12!,{R14|
|00005f30| 7d 3a 42 4c 20 73 65 72 | 64 72 69 76 65 3a 4c 44 |}:BL ser|drive:LD|
|00005f40| 4d 46 41 20 52 31 32 21 | 2c 7b 52 31 34 7d 3a 42 |MFA R12!|,{R14}:B|
|00005f50| 43 43 20 72 65 74 73 65 | 6e 64 73 6d 31 0d 1d 60 |CC retse|ndsm1..`|
|00005f60| 0e 42 20 73 65 6e 64 73 | 6d 62 31 0d 1d 6a 10 2e |.B sends|mb1..j..|
|00005f70| 73 65 6e 64 73 6d 31 70 | 72 6f 63 0d 1d 74 20 41 |sendsm1p|roc..t A|
|00005f80| 44 44 20 52 33 2c 52 33 | 2c 23 31 3a 4c 44 52 42 |DD R3,R3|,#1:LDRB|
|00005f90| 20 52 31 2c 5b 52 32 2c | 52 33 5d 0d 1d 7e 1a 54 | R1,[R2,|R3]..~.T|
|00005fa0| 45 51 20 52 31 2c 23 26 | 35 45 3a 42 45 51 20 73 |EQ R1,#&|5E:BEQ s|
|00005fb0| 65 6e 64 63 72 0d 1d 88 | 1f 53 55 42 20 52 31 2c |endcr...|.SUB R1,|
|00005fc0| 52 31 2c 23 26 36 30 3a | 42 20 72 65 74 73 6d 31 |R1,#&60:|B retsm1|
|00005fd0| 70 72 6f 63 0d 1d 92 0b | 2e 73 65 6e 64 63 72 0d |proc....|.sendcr.|
|00005fe0| 1d 9c 4a 4d 4f 56 20 52 | 31 2c 23 26 30 44 3a 53 |..JMOV R|1,#&0D:S|
|00005ff0| 54 4d 46 41 20 52 31 32 | 21 2c 7b 52 31 34 7d 3a |TMFA R12|!,{R14}:|
|00006000| 42 4c 20 73 65 72 64 72 | 69 76 65 3a 4c 44 4d 46 |BL serdr|ive:LDMF|
|00006010| 41 20 52 31 32 21 2c 7b | 52 31 34 7d 3a 42 43 53 |A R12!,{|R14}:BCS|
|00006020| 20 73 65 6e 64 73 6d 62 | 31 0d 1d a6 1c 4d 4f 56 | sendsmb|1....MOV|
|00006030| 20 52 31 2c 23 26 35 45 | 3a 42 20 72 65 74 73 65 | R1,#&5E|:B retse|
|00006040| 6e 64 73 6d 31 0d 1d b0 | 04 0d 1d ba 30 2e 73 77 |ndsm1...|....0.sw|
|00006050| 69 74 63 68 6f 75 74 3b | 20 45 6e 74 65 72 65 64 |itchout;| Entered|
|00006060| 20 77 69 74 68 20 73 74 | 72 65 61 6d 20 6e 75 6d | with st|ream num|
|00006070| 62 65 72 20 69 6e 20 52 | 32 0d 1d c4 34 53 54 4d |ber in R|2...4STM|
|00006080| 46 41 20 52 31 32 21 2c | 7b 52 31 2d 52 35 7d 3a |FA R12!,|{R1-R5}:|
|00006090| 80 53 20 52 32 2c 52 32 | 2c 23 26 46 46 3a 42 45 |.S R2,R2|,#&FF:BE|
|000060a0| 51 6f 75 74 73 77 69 74 | 63 68 6f 75 74 0d 1d ce |Qoutswit|chout...|
|000060b0| 36 42 49 43 20 52 33 2c | 52 33 2c 52 33 3a 4c 44 |6BIC R3,|R3,R3:LD|
|000060c0| 52 42 20 52 33 2c 6c 74 | 78 3a 54 45 51 20 52 32 |RB R3,lt|x:TEQ R2|
|000060d0| 2c 52 33 3a 42 45 51 6f | 75 74 73 77 69 74 63 68 |,R3:BEQo|utswitch|
|000060e0| 6f 75 74 0d 1d d8 10 42 | 49 43 20 52 30 2c 52 30 |out....B|IC R0,R0|
|000060f0| 2c 52 30 0d 1d e2 3b 4c | 44 52 20 52 35 2c 66 6c |,R0...;L|DR R5,fl|
|00006100| 61 67 62 61 73 65 3a 4d | 4f 56 20 52 34 2c 52 32 |agbase:M|OV R4,R2|
|00006110| 3a 4d 4f 56 20 52 34 2c | 52 34 2c 4c 53 4c 23 35 |:MOV R4,|R4,LSL#5|
|00006120| 3a 41 44 44 20 52 34 2c | 52 34 2c 23 32 30 0d 1d |:ADD R4,|R4,#20..|
|00006130| ec 33 4c 44 52 20 52 32 | 2c 5b 52 35 2c 52 34 5d |.3LDR R2|,[R5,R4]|
|00006140| 3a 4d 4f 56 20 52 31 2c | 52 32 3a 80 20 52 31 2c |:MOV R1,|R2:. R1,|
|00006150| 52 31 2c 23 26 46 46 3a | 4d 4f 56 20 52 30 2c 23 |R1,#&FF:|MOV R0,#|
|00006160| 33 0d 1d f6 31 53 54 4d | 46 41 20 52 31 32 21 2c |3...1STM|FA R12!,|
|00006170| 7b 52 31 34 7d 3a 42 4c | 20 73 65 72 64 72 69 76 |{R14}:BL| serdriv|
|00006180| 65 3a 4c 44 4d 46 41 20 | 52 31 32 21 2c 7b 52 31 |e:LDMFA |R12!,{R1|
|00006190| 34 7d 0d 1e 00 15 42 43 | 53 73 77 69 74 63 68 6f |4}....BC|Sswitcho|
|000061a0| 75 74 74 72 6f 75 62 0d | 1e 0a 20 4d 4f 56 20 52 |uttroub.|.. MOV R|
|000061b0| 31 2c 52 32 2c 4c 53 52 | 23 38 3a 80 20 52 31 2c |1,R2,LSR|#8:. R1,|
|000061c0| 52 31 2c 23 26 46 46 0d | 1e 14 43 53 54 4d 46 41 |R1,#&FF.|..CSTMFA|
|000061d0| 20 52 31 32 21 2c 7b 52 | 31 34 7d 3a 42 4c 20 73 | R12!,{R|14}:BL s|
|000061e0| 65 72 64 72 69 76 65 3a | 4c 44 4d 46 41 20 52 31 |erdrive:|LDMFA R1|
|000061f0| 32 21 2c 7b 52 31 34 7d | 3a 42 43 53 73 77 69 74 |2!,{R14}|:BCSswit|
|00006200| 63 68 6f 75 74 74 72 6f | 75 62 0d 1e 1e 11 2e 6f |chouttro|ub.....o|
|00006210| 75 74 73 77 69 74 63 68 | 6f 75 74 0d 1e 28 2e 4c |utswitch|out..(.L|
|00006220| 44 4d 46 41 20 52 31 32 | 21 2c 7b 52 31 2d 52 35 |DMFA R12|!,{R1-R5|
|00006230| 7d 3a 54 45 51 20 52 32 | 2c 23 30 3a 53 54 52 4e |}:TEQ R2|,#0:STRN|
|00006240| 45 42 20 52 32 2c 6c 74 | 78 0d 1e 32 0f 4d 4f 56 |EB R2,lt|x..2.MOV|
|00006250| 20 52 31 35 2c 52 31 34 | 0d 1e 3c 13 2e 73 77 69 | R15,R14|..<..swi|
|00006260| 74 63 68 6f 75 74 74 72 | 6f 75 62 0d 1e 46 46 41 |tchouttr|oub..FFA|
|00006270| 44 52 20 52 30 2c 73 65 | 6e 64 73 74 31 6d 73 67 |DR R0,se|ndst1msg|
|00006280| 3a 53 54 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 34 |:STMFA R|12!,{R14|
|00006290| 7d 3a 42 4c 20 72 65 70 | 6f 72 74 65 72 72 6f 72 |}:BL rep|orterror|
|000062a0| 3a 4c 44 4d 46 41 20 52 | 31 32 21 2c 7b 52 31 34 |:LDMFA R|12!,{R14|
|000062b0| 7d 0d 1e 50 12 42 20 6f | 75 74 73 77 69 74 63 68 |}..P.B o|utswitch|
|000062c0| 6f 75 74 0d 1e 5a 25 2e | 73 74 6f 69 70 62 3a 42 |out..Z%.|stoipb:B|
|000062d0| 4c 20 69 70 62 75 66 66 | 61 64 64 3a 42 20 6d 61 |L ipbuff|add:B ma|
|000062e0| 73 74 65 72 65 78 69 74 | 0d 1e 64 04 0d 1e 6e 0f |sterexit|..d...n.|
|000062f0| 3b 2e 69 70 62 75 66 66 | 61 64 64 0d 1e 78 16 3b |;.ipbuff|add..x.;|
|00006300| 53 54 4d 46 41 20 31 32 | 21 2c 7b 52 30 2d 52 36 |STMFA 12|!,{R0-R6|
|00006310| 7d 0d 1e 82 3a 3b 42 49 | 43 20 52 30 2c 52 30 2c |}...:;BI|C R0,R0,|
|00006320| 52 30 3a 42 49 43 20 52 | 31 2c 52 31 2c 52 31 3a |R0:BIC R|1,R1,R1:|
|00006330| 4c 44 52 20 52 32 2c 69 | 70 62 75 66 66 65 72 3a |LDR R2,i|pbuffer:|
|00006340| 4c 44 52 20 52 33 2c 69 | 70 69 6e 0d 1e 8c 1b 3b |LDR R3,i|pin....;|
|00006350| 4d 4f 56 20 52 30 2c 23 | 34 3a 4c 44 52 20 52 35 |MOV R0,#|4:LDR R5|
|00006360| 2c 69 70 6f 75 74 0d 1e | 96 12 3b 2e 74 6f 70 69 |,ipout..|..;.topi|
|00006370| 70 62 75 66 66 61 64 64 | 0d 1e a0 42 3b 53 55 42 |pbuffadd|...B;SUB|
|00006380| 53 20 52 36 2c 52 35 2c | 52 33 3a 43 4d 50 20 52 |S R6,R5,|R3:CMP R|
|00006390| 36 2c 23 31 3a 42 45 51 | 20 6e 6f 6d 6f 72 65 69 |6,#1:BEQ| nomorei|
|000063a0| 70 3b 20 43 68 65 63 6b | 20 74 6f 20 73 65 65 20 |p; Check| to see |
|000063b0| 6e 6f 20 6f 76 65 72 72 | 75 6e 0d 1e aa 15 3b 53 |no overr|un....;S|
|000063c0| 57 49 22 4f 53 5f 53 65 | 72 69 61 6c 4f 70 22 0d |WI"OS_Se|rialOp".|
|000063d0| 1e b4 11 3b 42 43 53 20 | 6e 6f 6d 6f 72 65 69 70 |...;BCS |nomoreip|
|000063e0| 0d 1e be 32 3b 53 54 52 | 42 20 52 31 2c 5b 52 32 |...2;STR|B R1,[R2|
|000063f0| 2c 52 33 5d 3a 41 44 44 | 20 52 33 2c 52 33 2c 23 |,R3]:ADD| R3,R3,#|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.